{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 第2章 深度学习基础"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.1 线性回归"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.1.2 线性回归的表示方法"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义两个1000维的向量"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "a = torch.ones(1000)\n",
    "b = torch.ones(1000)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "逐元素相加"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.031104087829589844"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from time import time\n",
    "start = time()\n",
    "c = torch.zeros(1000)\n",
    "for i in range(1000):\n",
    "    c[i] = a[i] + b[i]\n",
    "time() - start"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "直接将两个向量相加"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.001096963882446289"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "start = time()\n",
    "d = a + b\n",
    "time() - start"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "广播机制"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([11., 11., 11.])"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a = torch.ones(3)\n",
    "b = 10\n",
    "a + b"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "NumPy向量相加计算"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.00016617774963378906"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import numpy as np\n",
    "a = np.ones(1000)\n",
    "b = np.ones(1000)\n",
    "start = time()\n",
    "d = a + b\n",
    "time() - start"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.2 线性回归的从零开始实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import random"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "生成数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_inputs = 2\n",
    "num_examples = 1000\n",
    "true_w = [2, -3.4]\n",
    "true_b = 4.2\n",
    "features = torch.randn(num_examples, num_inputs, dtype=torch.float32)\n",
    "labels = true_w[0] * features[:, 0] + true_w[1] * features[:, 1] + true_b\n",
    "labels += torch.tensor(np.random.normal(0, 0.01, size=labels.size()), dtype=torch.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(tensor([-0.2390, -0.6869]), tensor(6.0951))"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "features[0], labels[0]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "特征和标签之间的相关性"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"166.978125pt\" version=\"1.1\" viewBox=\"0 0 237.804688 166.978125\" width=\"237.804688pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:41:47.390850</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 166.978125 \n",
       "L 237.804688 166.978125 \n",
       "L 237.804688 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 35.304688 143.1 \n",
       "L 230.604688 143.1 \n",
       "L 230.604688 7.2 \n",
       "L 35.304688 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"PathCollection_1\">\n",
       "    <defs>\n",
       "     <path d=\"M 0 0.5 \n",
       "C 0.132602 0.5 0.25979 0.447317 0.353553 0.353553 \n",
       "C 0.447317 0.25979 0.5 0.132602 0.5 0 \n",
       "C 0.5 -0.132602 0.447317 -0.25979 0.353553 -0.353553 \n",
       "C 0.25979 -0.447317 0.132602 -0.5 0 -0.5 \n",
       "C -0.132602 -0.5 -0.25979 -0.447317 -0.353553 -0.353553 \n",
       "C -0.447317 -0.25979 -0.5 -0.132602 -0.5 0 \n",
       "C -0.5 0.132602 -0.447317 0.25979 -0.353553 0.353553 \n",
       "C -0.25979 0.447317 -0.132602 0.5 0 0.5 \n",
       "z\n",
       "\" id=\"m7d2684f6dd\" style=\"stroke:#1f77b4;\"/>\n",
       "    </defs>\n",
       "    <g clip-path=\"url(#p4d898880ab)\">\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.279137\" xlink:href=\"#m7d2684f6dd\" y=\"66.630479\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"104.385553\" xlink:href=\"#m7d2684f6dd\" y=\"57.377274\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.023127\" xlink:href=\"#m7d2684f6dd\" y=\"82.594772\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.452873\" xlink:href=\"#m7d2684f6dd\" y=\"81.870946\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.600906\" xlink:href=\"#m7d2684f6dd\" y=\"94.277097\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.201\" xlink:href=\"#m7d2684f6dd\" y=\"75.197459\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"99.794385\" xlink:href=\"#m7d2684f6dd\" y=\"73.342288\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.176954\" xlink:href=\"#m7d2684f6dd\" y=\"87.474936\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"175.649555\" xlink:href=\"#m7d2684f6dd\" y=\"114.192648\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"97.166572\" xlink:href=\"#m7d2684f6dd\" y=\"59.98325\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"185.429692\" xlink:href=\"#m7d2684f6dd\" y=\"104.135555\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"86.613545\" xlink:href=\"#m7d2684f6dd\" y=\"46.397351\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.856163\" xlink:href=\"#m7d2684f6dd\" y=\"94.248928\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.619498\" xlink:href=\"#m7d2684f6dd\" y=\"75.269514\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.979505\" xlink:href=\"#m7d2684f6dd\" y=\"78.191301\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.44892\" xlink:href=\"#m7d2684f6dd\" y=\"94.336673\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"80.113321\" xlink:href=\"#m7d2684f6dd\" y=\"45.250538\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.691469\" xlink:href=\"#m7d2684f6dd\" y=\"82.81776\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.624686\" xlink:href=\"#m7d2684f6dd\" y=\"59.605633\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.816855\" xlink:href=\"#m7d2684f6dd\" y=\"68.078407\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.956257\" xlink:href=\"#m7d2684f6dd\" y=\"62.803072\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"73.67139\" xlink:href=\"#m7d2684f6dd\" y=\"44.34348\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.545341\" xlink:href=\"#m7d2684f6dd\" y=\"76.616497\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.027126\" xlink:href=\"#m7d2684f6dd\" y=\"57.378199\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.051424\" xlink:href=\"#m7d2684f6dd\" y=\"71.651146\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.952036\" xlink:href=\"#m7d2684f6dd\" y=\"72.759735\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"156.402589\" xlink:href=\"#m7d2684f6dd\" y=\"96.716908\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.640631\" xlink:href=\"#m7d2684f6dd\" y=\"64.46236\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.922985\" xlink:href=\"#m7d2684f6dd\" y=\"87.688887\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.91946\" xlink:href=\"#m7d2684f6dd\" y=\"53.022644\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.021954\" xlink:href=\"#m7d2684f6dd\" y=\"69.569088\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.864143\" xlink:href=\"#m7d2684f6dd\" y=\"81.446036\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.317523\" xlink:href=\"#m7d2684f6dd\" y=\"87.593605\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.212588\" xlink:href=\"#m7d2684f6dd\" y=\"81.707454\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"89.263838\" xlink:href=\"#m7d2684f6dd\" y=\"41.780951\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.465602\" xlink:href=\"#m7d2684f6dd\" y=\"94.973356\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.080942\" xlink:href=\"#m7d2684f6dd\" y=\"72.220206\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.064364\" xlink:href=\"#m7d2684f6dd\" y=\"87.630062\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.814884\" xlink:href=\"#m7d2684f6dd\" y=\"78.948755\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"104.797473\" xlink:href=\"#m7d2684f6dd\" y=\"63.700861\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"97.100866\" xlink:href=\"#m7d2684f6dd\" y=\"57.433469\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.869027\" xlink:href=\"#m7d2684f6dd\" y=\"72.89816\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.045057\" xlink:href=\"#m7d2684f6dd\" y=\"62.515304\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.576052\" xlink:href=\"#m7d2684f6dd\" y=\"79.973741\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"164.86697\" xlink:href=\"#m7d2684f6dd\" y=\"103.430668\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.01477\" xlink:href=\"#m7d2684f6dd\" y=\"86.072725\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.666843\" xlink:href=\"#m7d2684f6dd\" y=\"60.472054\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.965269\" xlink:href=\"#m7d2684f6dd\" y=\"66.013491\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.449619\" xlink:href=\"#m7d2684f6dd\" y=\"78.731034\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.244001\" xlink:href=\"#m7d2684f6dd\" y=\"75.684683\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.761573\" xlink:href=\"#m7d2684f6dd\" y=\"77.333901\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.17379\" xlink:href=\"#m7d2684f6dd\" y=\"77.094849\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.671521\" xlink:href=\"#m7d2684f6dd\" y=\"92.33555\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.485359\" xlink:href=\"#m7d2684f6dd\" y=\"58.19581\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.91084\" xlink:href=\"#m7d2684f6dd\" y=\"73.322472\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.097895\" xlink:href=\"#m7d2684f6dd\" y=\"79.439589\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.818649\" xlink:href=\"#m7d2684f6dd\" y=\"73.885097\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"87.155451\" xlink:href=\"#m7d2684f6dd\" y=\"62.451545\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"100.145925\" xlink:href=\"#m7d2684f6dd\" y=\"57.229772\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.327476\" xlink:href=\"#m7d2684f6dd\" y=\"78.600831\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.956477\" xlink:href=\"#m7d2684f6dd\" y=\"71.374039\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.299144\" xlink:href=\"#m7d2684f6dd\" y=\"69.696175\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.627463\" xlink:href=\"#m7d2684f6dd\" y=\"82.881047\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.466445\" xlink:href=\"#m7d2684f6dd\" y=\"93.668106\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.504412\" xlink:href=\"#m7d2684f6dd\" y=\"52.428791\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.398901\" xlink:href=\"#m7d2684f6dd\" y=\"98.08616\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.08889\" xlink:href=\"#m7d2684f6dd\" y=\"72.105274\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.588389\" xlink:href=\"#m7d2684f6dd\" y=\"83.699303\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.231433\" xlink:href=\"#m7d2684f6dd\" y=\"69.25359\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.869525\" xlink:href=\"#m7d2684f6dd\" y=\"56.41205\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.381671\" xlink:href=\"#m7d2684f6dd\" y=\"54.619516\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.125869\" xlink:href=\"#m7d2684f6dd\" y=\"88.503824\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"88.045764\" xlink:href=\"#m7d2684f6dd\" y=\"56.512231\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.171376\" xlink:href=\"#m7d2684f6dd\" y=\"69.851402\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.316124\" xlink:href=\"#m7d2684f6dd\" y=\"87.559527\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.333896\" xlink:href=\"#m7d2684f6dd\" y=\"87.884456\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.943781\" xlink:href=\"#m7d2684f6dd\" y=\"69.008667\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.294259\" xlink:href=\"#m7d2684f6dd\" y=\"73.765293\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"85.554729\" xlink:href=\"#m7d2684f6dd\" y=\"56.934403\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.75695\" xlink:href=\"#m7d2684f6dd\" y=\"73.6627\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"96.072286\" xlink:href=\"#m7d2684f6dd\" y=\"66.061257\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.522057\" xlink:href=\"#m7d2684f6dd\" y=\"86.887798\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.834089\" xlink:href=\"#m7d2684f6dd\" y=\"91.446873\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"158.407\" xlink:href=\"#m7d2684f6dd\" y=\"84.739921\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"158.609598\" xlink:href=\"#m7d2684f6dd\" y=\"78.83112\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.79502\" xlink:href=\"#m7d2684f6dd\" y=\"67.801927\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.685954\" xlink:href=\"#m7d2684f6dd\" y=\"68.592784\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"94.996776\" xlink:href=\"#m7d2684f6dd\" y=\"61.653504\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.596353\" xlink:href=\"#m7d2684f6dd\" y=\"80.389634\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.221\" xlink:href=\"#m7d2684f6dd\" y=\"65.935195\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.350108\" xlink:href=\"#m7d2684f6dd\" y=\"59.40087\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.720193\" xlink:href=\"#m7d2684f6dd\" y=\"74.749525\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.121624\" xlink:href=\"#m7d2684f6dd\" y=\"76.481198\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.243656\" xlink:href=\"#m7d2684f6dd\" y=\"99.085782\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.56898\" xlink:href=\"#m7d2684f6dd\" y=\"53.101753\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.714216\" xlink:href=\"#m7d2684f6dd\" y=\"53.664367\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"156.780889\" xlink:href=\"#m7d2684f6dd\" y=\"100.869947\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.532247\" xlink:href=\"#m7d2684f6dd\" y=\"77.344901\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"179.015785\" xlink:href=\"#m7d2684f6dd\" y=\"104.570618\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.376559\" xlink:href=\"#m7d2684f6dd\" y=\"97.680784\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.414206\" xlink:href=\"#m7d2684f6dd\" y=\"78.750178\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.651693\" xlink:href=\"#m7d2684f6dd\" y=\"72.828772\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.098461\" xlink:href=\"#m7d2684f6dd\" y=\"81.104911\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.472656\" xlink:href=\"#m7d2684f6dd\" y=\"76.696266\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"168.587298\" xlink:href=\"#m7d2684f6dd\" y=\"98.50201\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"72.300651\" xlink:href=\"#m7d2684f6dd\" y=\"25.663515\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"87.843071\" xlink:href=\"#m7d2684f6dd\" y=\"60.262893\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.091208\" xlink:href=\"#m7d2684f6dd\" y=\"91.143619\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"156.225243\" xlink:href=\"#m7d2684f6dd\" y=\"95.517559\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"153.296682\" xlink:href=\"#m7d2684f6dd\" y=\"86.8246\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.600465\" xlink:href=\"#m7d2684f6dd\" y=\"88.420274\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.057493\" xlink:href=\"#m7d2684f6dd\" y=\"74.366876\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.308869\" xlink:href=\"#m7d2684f6dd\" y=\"77.980326\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.614352\" xlink:href=\"#m7d2684f6dd\" y=\"83.34627\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.974603\" xlink:href=\"#m7d2684f6dd\" y=\"75.163219\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.085078\" xlink:href=\"#m7d2684f6dd\" y=\"63.525767\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.966455\" xlink:href=\"#m7d2684f6dd\" y=\"67.792428\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.112208\" xlink:href=\"#m7d2684f6dd\" y=\"80.885174\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.969199\" xlink:href=\"#m7d2684f6dd\" y=\"78.445027\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.158011\" xlink:href=\"#m7d2684f6dd\" y=\"67.73135\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.741601\" xlink:href=\"#m7d2684f6dd\" y=\"71.210519\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.821076\" xlink:href=\"#m7d2684f6dd\" y=\"66.346258\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.263553\" xlink:href=\"#m7d2684f6dd\" y=\"77.204475\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.96494\" xlink:href=\"#m7d2684f6dd\" y=\"86.94801\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"90.569088\" xlink:href=\"#m7d2684f6dd\" y=\"50.723828\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.663214\" xlink:href=\"#m7d2684f6dd\" y=\"60.8032\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.83977\" xlink:href=\"#m7d2684f6dd\" y=\"85.261752\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.415942\" xlink:href=\"#m7d2684f6dd\" y=\"52.481274\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.095682\" xlink:href=\"#m7d2684f6dd\" y=\"94.25337\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.723129\" xlink:href=\"#m7d2684f6dd\" y=\"102.623405\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"176.406476\" xlink:href=\"#m7d2684f6dd\" y=\"118.428693\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.038664\" xlink:href=\"#m7d2684f6dd\" y=\"70.009525\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"169.807244\" xlink:href=\"#m7d2684f6dd\" y=\"108.947915\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"89.678261\" xlink:href=\"#m7d2684f6dd\" y=\"47.342874\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.910981\" xlink:href=\"#m7d2684f6dd\" y=\"102.058\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.810092\" xlink:href=\"#m7d2684f6dd\" y=\"93.127898\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.53247\" xlink:href=\"#m7d2684f6dd\" y=\"70.31116\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"89.811258\" xlink:href=\"#m7d2684f6dd\" y=\"55.505517\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"106.113825\" xlink:href=\"#m7d2684f6dd\" y=\"60.044468\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.223736\" xlink:href=\"#m7d2684f6dd\" y=\"44.777934\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.181313\" xlink:href=\"#m7d2684f6dd\" y=\"84.324818\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"71.767471\" xlink:href=\"#m7d2684f6dd\" y=\"46.358861\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.641899\" xlink:href=\"#m7d2684f6dd\" y=\"66.307931\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.964595\" xlink:href=\"#m7d2684f6dd\" y=\"73.577571\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.219422\" xlink:href=\"#m7d2684f6dd\" y=\"54.765618\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.681987\" xlink:href=\"#m7d2684f6dd\" y=\"85.102327\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"89.691254\" xlink:href=\"#m7d2684f6dd\" y=\"46.401083\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.768094\" xlink:href=\"#m7d2684f6dd\" y=\"79.551924\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.863107\" xlink:href=\"#m7d2684f6dd\" y=\"74.18715\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.295888\" xlink:href=\"#m7d2684f6dd\" y=\"68.95881\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.365294\" xlink:href=\"#m7d2684f6dd\" y=\"65.712875\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.985275\" xlink:href=\"#m7d2684f6dd\" y=\"62.98925\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.012874\" xlink:href=\"#m7d2684f6dd\" y=\"65.931316\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.230123\" xlink:href=\"#m7d2684f6dd\" y=\"80.975451\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.021072\" xlink:href=\"#m7d2684f6dd\" y=\"83.541015\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.831457\" xlink:href=\"#m7d2684f6dd\" y=\"81.268923\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.795584\" xlink:href=\"#m7d2684f6dd\" y=\"60.807035\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.4396\" xlink:href=\"#m7d2684f6dd\" y=\"83.126204\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.865318\" xlink:href=\"#m7d2684f6dd\" y=\"79.017219\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"92.608912\" xlink:href=\"#m7d2684f6dd\" y=\"64.705521\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.723488\" xlink:href=\"#m7d2684f6dd\" y=\"84.164076\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"72.688662\" xlink:href=\"#m7d2684f6dd\" y=\"47.603555\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.229801\" xlink:href=\"#m7d2684f6dd\" y=\"90.929622\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.267591\" xlink:href=\"#m7d2684f6dd\" y=\"72.925103\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"97.011486\" xlink:href=\"#m7d2684f6dd\" y=\"59.436013\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"90.935515\" xlink:href=\"#m7d2684f6dd\" y=\"67.614899\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.622904\" xlink:href=\"#m7d2684f6dd\" y=\"59.842836\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"99.522352\" xlink:href=\"#m7d2684f6dd\" y=\"64.175116\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"90.203207\" xlink:href=\"#m7d2684f6dd\" y=\"51.713595\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.613684\" xlink:href=\"#m7d2684f6dd\" y=\"69.52451\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.039398\" xlink:href=\"#m7d2684f6dd\" y=\"85.262984\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.900497\" xlink:href=\"#m7d2684f6dd\" y=\"102.854204\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.760786\" xlink:href=\"#m7d2684f6dd\" y=\"75.1094\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.173052\" xlink:href=\"#m7d2684f6dd\" y=\"69.660495\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"96.635931\" xlink:href=\"#m7d2684f6dd\" y=\"59.173836\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.491897\" xlink:href=\"#m7d2684f6dd\" y=\"65.411386\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.783949\" xlink:href=\"#m7d2684f6dd\" y=\"82.840182\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.69354\" xlink:href=\"#m7d2684f6dd\" y=\"84.01002\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"97.711308\" xlink:href=\"#m7d2684f6dd\" y=\"75.970077\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.299573\" xlink:href=\"#m7d2684f6dd\" y=\"77.549652\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.057552\" xlink:href=\"#m7d2684f6dd\" y=\"86.742369\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"159.904105\" xlink:href=\"#m7d2684f6dd\" y=\"90.811059\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.65462\" xlink:href=\"#m7d2684f6dd\" y=\"98.659847\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.988458\" xlink:href=\"#m7d2684f6dd\" y=\"72.246906\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.311903\" xlink:href=\"#m7d2684f6dd\" y=\"88.192503\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.304479\" xlink:href=\"#m7d2684f6dd\" y=\"73.32732\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.920327\" xlink:href=\"#m7d2684f6dd\" y=\"63.765605\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.355059\" xlink:href=\"#m7d2684f6dd\" y=\"92.363705\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"100.766898\" xlink:href=\"#m7d2684f6dd\" y=\"60.934424\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.462644\" xlink:href=\"#m7d2684f6dd\" y=\"60.675\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.35962\" xlink:href=\"#m7d2684f6dd\" y=\"87.726945\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.429624\" xlink:href=\"#m7d2684f6dd\" y=\"57.590061\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.209536\" xlink:href=\"#m7d2684f6dd\" y=\"65.63283\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.862527\" xlink:href=\"#m7d2684f6dd\" y=\"85.534662\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"168.030613\" xlink:href=\"#m7d2684f6dd\" y=\"109.215103\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.446784\" xlink:href=\"#m7d2684f6dd\" y=\"60.765923\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"79.0201\" xlink:href=\"#m7d2684f6dd\" y=\"48.557455\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.411579\" xlink:href=\"#m7d2684f6dd\" y=\"82.448678\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.46423\" xlink:href=\"#m7d2684f6dd\" y=\"45.757322\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"153.200095\" xlink:href=\"#m7d2684f6dd\" y=\"84.657029\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.902167\" xlink:href=\"#m7d2684f6dd\" y=\"104.229024\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.229409\" xlink:href=\"#m7d2684f6dd\" y=\"91.761708\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"153.575958\" xlink:href=\"#m7d2684f6dd\" y=\"93.788663\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.282534\" xlink:href=\"#m7d2684f6dd\" y=\"89.834505\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.081866\" xlink:href=\"#m7d2684f6dd\" y=\"60.67192\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"168.865843\" xlink:href=\"#m7d2684f6dd\" y=\"107.874675\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.34562\" xlink:href=\"#m7d2684f6dd\" y=\"73.673459\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"172.980801\" xlink:href=\"#m7d2684f6dd\" y=\"98.830506\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.16779\" xlink:href=\"#m7d2684f6dd\" y=\"78.732466\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.801683\" xlink:href=\"#m7d2684f6dd\" y=\"68.942892\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.540825\" xlink:href=\"#m7d2684f6dd\" y=\"69.670812\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"75.090334\" xlink:href=\"#m7d2684f6dd\" y=\"45.633094\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.268412\" xlink:href=\"#m7d2684f6dd\" y=\"76.90627\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.992347\" xlink:href=\"#m7d2684f6dd\" y=\"94.191743\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.654848\" xlink:href=\"#m7d2684f6dd\" y=\"77.758426\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.671985\" xlink:href=\"#m7d2684f6dd\" y=\"61.248726\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"72.497244\" xlink:href=\"#m7d2684f6dd\" y=\"59.523689\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.227369\" xlink:href=\"#m7d2684f6dd\" y=\"78.574431\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.307513\" xlink:href=\"#m7d2684f6dd\" y=\"70.814155\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.555667\" xlink:href=\"#m7d2684f6dd\" y=\"80.885251\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.867405\" xlink:href=\"#m7d2684f6dd\" y=\"76.818763\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.547604\" xlink:href=\"#m7d2684f6dd\" y=\"100.577275\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.676623\" xlink:href=\"#m7d2684f6dd\" y=\"85.175425\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.660793\" xlink:href=\"#m7d2684f6dd\" y=\"64.945324\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.844635\" xlink:href=\"#m7d2684f6dd\" y=\"58.293961\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.723481\" xlink:href=\"#m7d2684f6dd\" y=\"87.486025\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"167.869554\" xlink:href=\"#m7d2684f6dd\" y=\"109.765322\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.487741\" xlink:href=\"#m7d2684f6dd\" y=\"71.565228\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.280469\" xlink:href=\"#m7d2684f6dd\" y=\"95.648807\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.505284\" xlink:href=\"#m7d2684f6dd\" y=\"85.368566\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.678329\" xlink:href=\"#m7d2684f6dd\" y=\"87.267748\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.55651\" xlink:href=\"#m7d2684f6dd\" y=\"82.196602\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.892168\" xlink:href=\"#m7d2684f6dd\" y=\"93.841403\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.260364\" xlink:href=\"#m7d2684f6dd\" y=\"68.425488\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.892928\" xlink:href=\"#m7d2684f6dd\" y=\"57.430723\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.534853\" xlink:href=\"#m7d2684f6dd\" y=\"83.280644\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.586974\" xlink:href=\"#m7d2684f6dd\" y=\"77.651322\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.831828\" xlink:href=\"#m7d2684f6dd\" y=\"78.241115\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.690649\" xlink:href=\"#m7d2684f6dd\" y=\"77.947638\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.528667\" xlink:href=\"#m7d2684f6dd\" y=\"93.782362\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.965032\" xlink:href=\"#m7d2684f6dd\" y=\"99.53169\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.114897\" xlink:href=\"#m7d2684f6dd\" y=\"71.045957\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"180.094304\" xlink:href=\"#m7d2684f6dd\" y=\"106.31268\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.196597\" xlink:href=\"#m7d2684f6dd\" y=\"91.260715\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"106.104853\" xlink:href=\"#m7d2684f6dd\" y=\"61.2874\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.788507\" xlink:href=\"#m7d2684f6dd\" y=\"80.965415\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"92.719818\" xlink:href=\"#m7d2684f6dd\" y=\"63.986472\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.989795\" xlink:href=\"#m7d2684f6dd\" y=\"74.082876\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.253707\" xlink:href=\"#m7d2684f6dd\" y=\"50.967456\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.056064\" xlink:href=\"#m7d2684f6dd\" y=\"80.552462\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.574115\" xlink:href=\"#m7d2684f6dd\" y=\"65.68308\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.696995\" xlink:href=\"#m7d2684f6dd\" y=\"75.179296\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.317921\" xlink:href=\"#m7d2684f6dd\" y=\"75.018485\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.018859\" xlink:href=\"#m7d2684f6dd\" y=\"72.797402\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.19664\" xlink:href=\"#m7d2684f6dd\" y=\"84.578428\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.90788\" xlink:href=\"#m7d2684f6dd\" y=\"62.191854\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.650025\" xlink:href=\"#m7d2684f6dd\" y=\"70.926191\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.264726\" xlink:href=\"#m7d2684f6dd\" y=\"41.725903\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.42402\" xlink:href=\"#m7d2684f6dd\" y=\"92.048977\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"171.074561\" xlink:href=\"#m7d2684f6dd\" y=\"103.032352\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.169836\" xlink:href=\"#m7d2684f6dd\" y=\"100.758903\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"51.719672\" xlink:href=\"#m7d2684f6dd\" y=\"32.117909\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.122279\" xlink:href=\"#m7d2684f6dd\" y=\"68.782324\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.151215\" xlink:href=\"#m7d2684f6dd\" y=\"79.989133\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.329407\" xlink:href=\"#m7d2684f6dd\" y=\"75.619854\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"106.537381\" xlink:href=\"#m7d2684f6dd\" y=\"65.386438\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.549912\" xlink:href=\"#m7d2684f6dd\" y=\"78.469259\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.559286\" xlink:href=\"#m7d2684f6dd\" y=\"64.622566\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.538031\" xlink:href=\"#m7d2684f6dd\" y=\"80.262984\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.466105\" xlink:href=\"#m7d2684f6dd\" y=\"66.60001\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.172991\" xlink:href=\"#m7d2684f6dd\" y=\"77.998392\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.187472\" xlink:href=\"#m7d2684f6dd\" y=\"87.988108\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.233396\" xlink:href=\"#m7d2684f6dd\" y=\"82.909396\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"159.850288\" xlink:href=\"#m7d2684f6dd\" y=\"103.244773\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.50725\" xlink:href=\"#m7d2684f6dd\" y=\"69.695475\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.648928\" xlink:href=\"#m7d2684f6dd\" y=\"89.439522\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.091946\" xlink:href=\"#m7d2684f6dd\" y=\"66.581637\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.604479\" xlink:href=\"#m7d2684f6dd\" y=\"56.328235\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.848143\" xlink:href=\"#m7d2684f6dd\" y=\"75.898123\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.114388\" xlink:href=\"#m7d2684f6dd\" y=\"61.856352\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.018617\" xlink:href=\"#m7d2684f6dd\" y=\"75.812601\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.569177\" xlink:href=\"#m7d2684f6dd\" y=\"84.558507\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.571724\" xlink:href=\"#m7d2684f6dd\" y=\"99.360156\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.480901\" xlink:href=\"#m7d2684f6dd\" y=\"59.074527\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"71.555796\" xlink:href=\"#m7d2684f6dd\" y=\"34.598146\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.065826\" xlink:href=\"#m7d2684f6dd\" y=\"41.899196\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.820172\" xlink:href=\"#m7d2684f6dd\" y=\"87.851193\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.141276\" xlink:href=\"#m7d2684f6dd\" y=\"50.948557\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.027585\" xlink:href=\"#m7d2684f6dd\" y=\"75.225869\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.644382\" xlink:href=\"#m7d2684f6dd\" y=\"77.50526\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.002096\" xlink:href=\"#m7d2684f6dd\" y=\"66.796007\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.765375\" xlink:href=\"#m7d2684f6dd\" y=\"83.596244\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.945076\" xlink:href=\"#m7d2684f6dd\" y=\"62.649528\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.818303\" xlink:href=\"#m7d2684f6dd\" y=\"60.500174\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.445183\" xlink:href=\"#m7d2684f6dd\" y=\"78.262424\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"96.464805\" xlink:href=\"#m7d2684f6dd\" y=\"56.597159\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.871522\" xlink:href=\"#m7d2684f6dd\" y=\"68.347091\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.152338\" xlink:href=\"#m7d2684f6dd\" y=\"90.623832\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.616255\" xlink:href=\"#m7d2684f6dd\" y=\"72.414138\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.111879\" xlink:href=\"#m7d2684f6dd\" y=\"73.625184\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.246361\" xlink:href=\"#m7d2684f6dd\" y=\"79.275148\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.872057\" xlink:href=\"#m7d2684f6dd\" y=\"62.169665\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"83.731431\" xlink:href=\"#m7d2684f6dd\" y=\"36.211875\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.637448\" xlink:href=\"#m7d2684f6dd\" y=\"70.874055\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.994393\" xlink:href=\"#m7d2684f6dd\" y=\"79.122673\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"161.180463\" xlink:href=\"#m7d2684f6dd\" y=\"101.867925\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.77521\" xlink:href=\"#m7d2684f6dd\" y=\"81.567026\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.761191\" xlink:href=\"#m7d2684f6dd\" y=\"99.367815\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.180603\" xlink:href=\"#m7d2684f6dd\" y=\"82.117784\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.56497\" xlink:href=\"#m7d2684f6dd\" y=\"93.412712\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.266675\" xlink:href=\"#m7d2684f6dd\" y=\"88.758622\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.133396\" xlink:href=\"#m7d2684f6dd\" y=\"77.311726\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.323387\" xlink:href=\"#m7d2684f6dd\" y=\"64.911827\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.118787\" xlink:href=\"#m7d2684f6dd\" y=\"68.972154\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.686078\" xlink:href=\"#m7d2684f6dd\" y=\"73.967318\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.301722\" xlink:href=\"#m7d2684f6dd\" y=\"65.629071\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.953669\" xlink:href=\"#m7d2684f6dd\" y=\"79.918685\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.512438\" xlink:href=\"#m7d2684f6dd\" y=\"74.068608\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.346309\" xlink:href=\"#m7d2684f6dd\" y=\"82.149637\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.841853\" xlink:href=\"#m7d2684f6dd\" y=\"102.104245\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.810338\" xlink:href=\"#m7d2684f6dd\" y=\"89.44214\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.228492\" xlink:href=\"#m7d2684f6dd\" y=\"67.506083\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.58913\" xlink:href=\"#m7d2684f6dd\" y=\"81.402985\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.213988\" xlink:href=\"#m7d2684f6dd\" y=\"87.983123\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.470946\" xlink:href=\"#m7d2684f6dd\" y=\"82.449727\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.921467\" xlink:href=\"#m7d2684f6dd\" y=\"64.774566\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.060482\" xlink:href=\"#m7d2684f6dd\" y=\"87.828282\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.224124\" xlink:href=\"#m7d2684f6dd\" y=\"59.087398\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.688607\" xlink:href=\"#m7d2684f6dd\" y=\"79.815395\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.914101\" xlink:href=\"#m7d2684f6dd\" y=\"46.378619\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.417456\" xlink:href=\"#m7d2684f6dd\" y=\"68.477618\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.402812\" xlink:href=\"#m7d2684f6dd\" y=\"56.830882\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.531013\" xlink:href=\"#m7d2684f6dd\" y=\"61.356093\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"94.053135\" xlink:href=\"#m7d2684f6dd\" y=\"63.940034\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"83.534958\" xlink:href=\"#m7d2684f6dd\" y=\"40.614129\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.551896\" xlink:href=\"#m7d2684f6dd\" y=\"89.236751\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.338186\" xlink:href=\"#m7d2684f6dd\" y=\"63.244664\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"162.012128\" xlink:href=\"#m7d2684f6dd\" y=\"103.181795\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.464729\" xlink:href=\"#m7d2684f6dd\" y=\"71.578804\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.416877\" xlink:href=\"#m7d2684f6dd\" y=\"64.31992\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.14305\" xlink:href=\"#m7d2684f6dd\" y=\"63.776696\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.885696\" xlink:href=\"#m7d2684f6dd\" y=\"70.220531\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"153.629487\" xlink:href=\"#m7d2684f6dd\" y=\"94.14409\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.476017\" xlink:href=\"#m7d2684f6dd\" y=\"82.958979\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.437165\" xlink:href=\"#m7d2684f6dd\" y=\"76.596955\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.88275\" xlink:href=\"#m7d2684f6dd\" y=\"90.962862\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"90.759275\" xlink:href=\"#m7d2684f6dd\" y=\"56.280251\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.527196\" xlink:href=\"#m7d2684f6dd\" y=\"55.858955\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.17231\" xlink:href=\"#m7d2684f6dd\" y=\"81.886962\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.671069\" xlink:href=\"#m7d2684f6dd\" y=\"59.211379\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.859046\" xlink:href=\"#m7d2684f6dd\" y=\"75.891734\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"99.517205\" xlink:href=\"#m7d2684f6dd\" y=\"51.5788\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.988423\" xlink:href=\"#m7d2684f6dd\" y=\"60.880536\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"92.106153\" xlink:href=\"#m7d2684f6dd\" y=\"50.807668\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.619562\" xlink:href=\"#m7d2684f6dd\" y=\"68.267269\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.188373\" xlink:href=\"#m7d2684f6dd\" y=\"90.728794\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.077331\" xlink:href=\"#m7d2684f6dd\" y=\"92.776106\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.174311\" xlink:href=\"#m7d2684f6dd\" y=\"78.777893\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"94.59144\" xlink:href=\"#m7d2684f6dd\" y=\"49.370883\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.157721\" xlink:href=\"#m7d2684f6dd\" y=\"82.040158\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.861317\" xlink:href=\"#m7d2684f6dd\" y=\"78.200671\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.905869\" xlink:href=\"#m7d2684f6dd\" y=\"61.518492\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.598737\" xlink:href=\"#m7d2684f6dd\" y=\"74.719854\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.307397\" xlink:href=\"#m7d2684f6dd\" y=\"76.565282\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.03289\" xlink:href=\"#m7d2684f6dd\" y=\"77.551897\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.094031\" xlink:href=\"#m7d2684f6dd\" y=\"66.143206\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.541314\" xlink:href=\"#m7d2684f6dd\" y=\"83.715894\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.638371\" xlink:href=\"#m7d2684f6dd\" y=\"86.949345\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.849926\" xlink:href=\"#m7d2684f6dd\" y=\"78.885372\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.580452\" xlink:href=\"#m7d2684f6dd\" y=\"91.352815\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.769229\" xlink:href=\"#m7d2684f6dd\" y=\"64.40982\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.162156\" xlink:href=\"#m7d2684f6dd\" y=\"110.626108\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.09121\" xlink:href=\"#m7d2684f6dd\" y=\"74.723721\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"77.905051\" xlink:href=\"#m7d2684f6dd\" y=\"56.438885\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.785008\" xlink:href=\"#m7d2684f6dd\" y=\"82.597423\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.033431\" xlink:href=\"#m7d2684f6dd\" y=\"65.450052\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.945881\" xlink:href=\"#m7d2684f6dd\" y=\"62.661718\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.877239\" xlink:href=\"#m7d2684f6dd\" y=\"76.90404\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.275523\" xlink:href=\"#m7d2684f6dd\" y=\"68.00944\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.143673\" xlink:href=\"#m7d2684f6dd\" y=\"86.338177\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.521712\" xlink:href=\"#m7d2684f6dd\" y=\"56.340292\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"79.666463\" xlink:href=\"#m7d2684f6dd\" y=\"60.020248\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.160357\" xlink:href=\"#m7d2684f6dd\" y=\"77.529984\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.040796\" xlink:href=\"#m7d2684f6dd\" y=\"90.963653\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"91.35777\" xlink:href=\"#m7d2684f6dd\" y=\"58.004076\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.252763\" xlink:href=\"#m7d2684f6dd\" y=\"80.159871\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.959318\" xlink:href=\"#m7d2684f6dd\" y=\"80.778974\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.037741\" xlink:href=\"#m7d2684f6dd\" y=\"73.860583\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"158.644223\" xlink:href=\"#m7d2684f6dd\" y=\"90.330577\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.502304\" xlink:href=\"#m7d2684f6dd\" y=\"103.912947\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"156.67722\" xlink:href=\"#m7d2684f6dd\" y=\"94.49461\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.498372\" xlink:href=\"#m7d2684f6dd\" y=\"64.690557\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.127533\" xlink:href=\"#m7d2684f6dd\" y=\"63.446061\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.77703\" xlink:href=\"#m7d2684f6dd\" y=\"102.031515\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.730201\" xlink:href=\"#m7d2684f6dd\" y=\"78.510565\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"100.773988\" xlink:href=\"#m7d2684f6dd\" y=\"67.310835\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.80112\" xlink:href=\"#m7d2684f6dd\" y=\"85.43656\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.115924\" xlink:href=\"#m7d2684f6dd\" y=\"83.107347\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.862481\" xlink:href=\"#m7d2684f6dd\" y=\"76.675174\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.912287\" xlink:href=\"#m7d2684f6dd\" y=\"64.629611\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"73.075335\" xlink:href=\"#m7d2684f6dd\" y=\"47.033598\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.082221\" xlink:href=\"#m7d2684f6dd\" y=\"78.377335\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.679007\" xlink:href=\"#m7d2684f6dd\" y=\"81.953671\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"78.234404\" xlink:href=\"#m7d2684f6dd\" y=\"53.991367\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.600962\" xlink:href=\"#m7d2684f6dd\" y=\"69.626058\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.346758\" xlink:href=\"#m7d2684f6dd\" y=\"72.074662\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"167.013211\" xlink:href=\"#m7d2684f6dd\" y=\"101.444376\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.247899\" xlink:href=\"#m7d2684f6dd\" y=\"102.685269\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.291287\" xlink:href=\"#m7d2684f6dd\" y=\"68.067163\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.960527\" xlink:href=\"#m7d2684f6dd\" y=\"99.101208\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.644376\" xlink:href=\"#m7d2684f6dd\" y=\"72.724908\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.360182\" xlink:href=\"#m7d2684f6dd\" y=\"61.24688\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.155406\" xlink:href=\"#m7d2684f6dd\" y=\"93.69317\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.921943\" xlink:href=\"#m7d2684f6dd\" y=\"91.790741\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.652654\" xlink:href=\"#m7d2684f6dd\" y=\"83.78461\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.788897\" xlink:href=\"#m7d2684f6dd\" y=\"49.777107\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"160.32508\" xlink:href=\"#m7d2684f6dd\" y=\"96.051018\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.876386\" xlink:href=\"#m7d2684f6dd\" y=\"74.588376\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.251924\" xlink:href=\"#m7d2684f6dd\" y=\"64.893347\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.34937\" xlink:href=\"#m7d2684f6dd\" y=\"78.206618\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.885464\" xlink:href=\"#m7d2684f6dd\" y=\"70.716161\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.469498\" xlink:href=\"#m7d2684f6dd\" y=\"51.41345\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.213374\" xlink:href=\"#m7d2684f6dd\" y=\"70.498053\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.824184\" xlink:href=\"#m7d2684f6dd\" y=\"98.082316\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"164.210875\" xlink:href=\"#m7d2684f6dd\" y=\"93.368962\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"153.711915\" xlink:href=\"#m7d2684f6dd\" y=\"111.27327\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.764891\" xlink:href=\"#m7d2684f6dd\" y=\"52.616622\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.303192\" xlink:href=\"#m7d2684f6dd\" y=\"72.885426\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.842899\" xlink:href=\"#m7d2684f6dd\" y=\"94.415798\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.685805\" xlink:href=\"#m7d2684f6dd\" y=\"91.835582\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.579964\" xlink:href=\"#m7d2684f6dd\" y=\"71.622811\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.853736\" xlink:href=\"#m7d2684f6dd\" y=\"76.012987\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"157.09326\" xlink:href=\"#m7d2684f6dd\" y=\"99.894454\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"163.011064\" xlink:href=\"#m7d2684f6dd\" y=\"93.663408\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.14148\" xlink:href=\"#m7d2684f6dd\" y=\"64.743923\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.326087\" xlink:href=\"#m7d2684f6dd\" y=\"65.160461\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.623313\" xlink:href=\"#m7d2684f6dd\" y=\"79.195885\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.641552\" xlink:href=\"#m7d2684f6dd\" y=\"92.754597\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.105\" xlink:href=\"#m7d2684f6dd\" y=\"58.608305\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.489883\" xlink:href=\"#m7d2684f6dd\" y=\"83.746026\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"83.831097\" xlink:href=\"#m7d2684f6dd\" y=\"48.89837\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.76283\" xlink:href=\"#m7d2684f6dd\" y=\"61.912049\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.192367\" xlink:href=\"#m7d2684f6dd\" y=\"53.056191\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.495132\" xlink:href=\"#m7d2684f6dd\" y=\"79.862181\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.858801\" xlink:href=\"#m7d2684f6dd\" y=\"71.776856\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.577743\" xlink:href=\"#m7d2684f6dd\" y=\"77.061025\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.990677\" xlink:href=\"#m7d2684f6dd\" y=\"73.162887\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"100.713111\" xlink:href=\"#m7d2684f6dd\" y=\"44.111938\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.41606\" xlink:href=\"#m7d2684f6dd\" y=\"67.436504\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.744002\" xlink:href=\"#m7d2684f6dd\" y=\"79.582594\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.040881\" xlink:href=\"#m7d2684f6dd\" y=\"90.497133\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.834553\" xlink:href=\"#m7d2684f6dd\" y=\"63.930744\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.758479\" xlink:href=\"#m7d2684f6dd\" y=\"80.801457\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.943336\" xlink:href=\"#m7d2684f6dd\" y=\"74.787687\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"106.928792\" xlink:href=\"#m7d2684f6dd\" y=\"57.047311\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.83831\" xlink:href=\"#m7d2684f6dd\" y=\"78.280417\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"90.184991\" xlink:href=\"#m7d2684f6dd\" y=\"53.052286\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"78.03223\" xlink:href=\"#m7d2684f6dd\" y=\"54.621414\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.221431\" xlink:href=\"#m7d2684f6dd\" y=\"52.701259\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.389518\" xlink:href=\"#m7d2684f6dd\" y=\"80.375462\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.999248\" xlink:href=\"#m7d2684f6dd\" y=\"84.299451\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"91.846253\" xlink:href=\"#m7d2684f6dd\" y=\"64.849557\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"159.463093\" xlink:href=\"#m7d2684f6dd\" y=\"93.989645\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.327698\" xlink:href=\"#m7d2684f6dd\" y=\"72.483787\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.095536\" xlink:href=\"#m7d2684f6dd\" y=\"86.828338\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.598216\" xlink:href=\"#m7d2684f6dd\" y=\"60.063983\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.002305\" xlink:href=\"#m7d2684f6dd\" y=\"83.181173\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.928418\" xlink:href=\"#m7d2684f6dd\" y=\"79.032895\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.595498\" xlink:href=\"#m7d2684f6dd\" y=\"77.034006\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.407715\" xlink:href=\"#m7d2684f6dd\" y=\"88.265161\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.13969\" xlink:href=\"#m7d2684f6dd\" y=\"63.887928\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.850355\" xlink:href=\"#m7d2684f6dd\" y=\"56.422768\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.990312\" xlink:href=\"#m7d2684f6dd\" y=\"75.802389\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.618259\" xlink:href=\"#m7d2684f6dd\" y=\"69.667321\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.793372\" xlink:href=\"#m7d2684f6dd\" y=\"74.677728\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.457275\" xlink:href=\"#m7d2684f6dd\" y=\"53.427996\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"106.016414\" xlink:href=\"#m7d2684f6dd\" y=\"58.831476\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.246762\" xlink:href=\"#m7d2684f6dd\" y=\"87.432919\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.3501\" xlink:href=\"#m7d2684f6dd\" y=\"89.676135\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.904981\" xlink:href=\"#m7d2684f6dd\" y=\"71.143582\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.624285\" xlink:href=\"#m7d2684f6dd\" y=\"64.24401\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.411144\" xlink:href=\"#m7d2684f6dd\" y=\"76.062677\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.398529\" xlink:href=\"#m7d2684f6dd\" y=\"73.932826\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"221.727415\" xlink:href=\"#m7d2684f6dd\" y=\"136.922727\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.823116\" xlink:href=\"#m7d2684f6dd\" y=\"79.670443\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.425775\" xlink:href=\"#m7d2684f6dd\" y=\"67.084311\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.977914\" xlink:href=\"#m7d2684f6dd\" y=\"60.267788\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.499093\" xlink:href=\"#m7d2684f6dd\" y=\"75.128731\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.122449\" xlink:href=\"#m7d2684f6dd\" y=\"55.156028\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.374156\" xlink:href=\"#m7d2684f6dd\" y=\"76.309909\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.489915\" xlink:href=\"#m7d2684f6dd\" y=\"78.328141\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.308826\" xlink:href=\"#m7d2684f6dd\" y=\"72.535778\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"81.63117\" xlink:href=\"#m7d2684f6dd\" y=\"43.253578\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.640606\" xlink:href=\"#m7d2684f6dd\" y=\"59.317129\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"81.288478\" xlink:href=\"#m7d2684f6dd\" y=\"49.757332\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.45136\" xlink:href=\"#m7d2684f6dd\" y=\"53.642484\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.55492\" xlink:href=\"#m7d2684f6dd\" y=\"46.20526\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"44.18196\" xlink:href=\"#m7d2684f6dd\" y=\"13.377273\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.810189\" xlink:href=\"#m7d2684f6dd\" y=\"59.001725\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.200085\" xlink:href=\"#m7d2684f6dd\" y=\"66.555737\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.375775\" xlink:href=\"#m7d2684f6dd\" y=\"79.083219\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.951213\" xlink:href=\"#m7d2684f6dd\" y=\"71.664571\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"100.723348\" xlink:href=\"#m7d2684f6dd\" y=\"54.986389\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.009878\" xlink:href=\"#m7d2684f6dd\" y=\"48.177227\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"180.711975\" xlink:href=\"#m7d2684f6dd\" y=\"110.647853\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.404826\" xlink:href=\"#m7d2684f6dd\" y=\"91.945909\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.120737\" xlink:href=\"#m7d2684f6dd\" y=\"91.056658\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.610295\" xlink:href=\"#m7d2684f6dd\" y=\"66.053326\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"92.042685\" xlink:href=\"#m7d2684f6dd\" y=\"65.712982\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.100172\" xlink:href=\"#m7d2684f6dd\" y=\"77.794816\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.932285\" xlink:href=\"#m7d2684f6dd\" y=\"65.328514\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.723001\" xlink:href=\"#m7d2684f6dd\" y=\"65.518196\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.835181\" xlink:href=\"#m7d2684f6dd\" y=\"107.226849\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.636836\" xlink:href=\"#m7d2684f6dd\" y=\"64.517073\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.735481\" xlink:href=\"#m7d2684f6dd\" y=\"61.844784\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"183.509174\" xlink:href=\"#m7d2684f6dd\" y=\"108.320114\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"106.290113\" xlink:href=\"#m7d2684f6dd\" y=\"63.875516\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.872836\" xlink:href=\"#m7d2684f6dd\" y=\"65.458787\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.487629\" xlink:href=\"#m7d2684f6dd\" y=\"72.215017\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.660026\" xlink:href=\"#m7d2684f6dd\" y=\"75.488924\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"163.912666\" xlink:href=\"#m7d2684f6dd\" y=\"90.809111\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.436462\" xlink:href=\"#m7d2684f6dd\" y=\"59.112143\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.051892\" xlink:href=\"#m7d2684f6dd\" y=\"72.056014\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.188523\" xlink:href=\"#m7d2684f6dd\" y=\"75.046138\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.201568\" xlink:href=\"#m7d2684f6dd\" y=\"66.411112\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.500837\" xlink:href=\"#m7d2684f6dd\" y=\"69.829878\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.081982\" xlink:href=\"#m7d2684f6dd\" y=\"61.098305\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.25753\" xlink:href=\"#m7d2684f6dd\" y=\"98.308701\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"100.877356\" xlink:href=\"#m7d2684f6dd\" y=\"66.282077\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.641073\" xlink:href=\"#m7d2684f6dd\" y=\"80.161087\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.996403\" xlink:href=\"#m7d2684f6dd\" y=\"76.056312\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"94.741322\" xlink:href=\"#m7d2684f6dd\" y=\"51.86136\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.800712\" xlink:href=\"#m7d2684f6dd\" y=\"68.21307\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.193434\" xlink:href=\"#m7d2684f6dd\" y=\"65.594409\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.561128\" xlink:href=\"#m7d2684f6dd\" y=\"63.662762\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.711012\" xlink:href=\"#m7d2684f6dd\" y=\"82.978754\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.149633\" xlink:href=\"#m7d2684f6dd\" y=\"84.680847\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.897083\" xlink:href=\"#m7d2684f6dd\" y=\"61.88176\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.092922\" xlink:href=\"#m7d2684f6dd\" y=\"51.621362\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.553123\" xlink:href=\"#m7d2684f6dd\" y=\"74.646275\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.200186\" xlink:href=\"#m7d2684f6dd\" y=\"65.194118\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.964764\" xlink:href=\"#m7d2684f6dd\" y=\"97.932251\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.858564\" xlink:href=\"#m7d2684f6dd\" y=\"58.123946\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"159.907336\" xlink:href=\"#m7d2684f6dd\" y=\"93.321893\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.742719\" xlink:href=\"#m7d2684f6dd\" y=\"68.907363\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"89.614932\" xlink:href=\"#m7d2684f6dd\" y=\"35.097863\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.063425\" xlink:href=\"#m7d2684f6dd\" y=\"65.687361\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"89.814987\" xlink:href=\"#m7d2684f6dd\" y=\"55.782519\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.969262\" xlink:href=\"#m7d2684f6dd\" y=\"65.884755\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.037176\" xlink:href=\"#m7d2684f6dd\" y=\"89.225885\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.475262\" xlink:href=\"#m7d2684f6dd\" y=\"70.361649\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.94444\" xlink:href=\"#m7d2684f6dd\" y=\"64.089794\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.205661\" xlink:href=\"#m7d2684f6dd\" y=\"80.584244\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.892854\" xlink:href=\"#m7d2684f6dd\" y=\"74.194698\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.774284\" xlink:href=\"#m7d2684f6dd\" y=\"73.960402\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"82.819496\" xlink:href=\"#m7d2684f6dd\" y=\"43.203833\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.661399\" xlink:href=\"#m7d2684f6dd\" y=\"64.999609\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.240169\" xlink:href=\"#m7d2684f6dd\" y=\"87.360115\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.496815\" xlink:href=\"#m7d2684f6dd\" y=\"69.494903\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.668093\" xlink:href=\"#m7d2684f6dd\" y=\"84.123448\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"153.002274\" xlink:href=\"#m7d2684f6dd\" y=\"88.868342\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.933748\" xlink:href=\"#m7d2684f6dd\" y=\"62.757945\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.718985\" xlink:href=\"#m7d2684f6dd\" y=\"75.358049\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.12124\" xlink:href=\"#m7d2684f6dd\" y=\"52.108237\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"72.204067\" xlink:href=\"#m7d2684f6dd\" y=\"41.304517\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.181093\" xlink:href=\"#m7d2684f6dd\" y=\"102.570261\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"159.296612\" xlink:href=\"#m7d2684f6dd\" y=\"90.890518\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.720267\" xlink:href=\"#m7d2684f6dd\" y=\"92.714148\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.183502\" xlink:href=\"#m7d2684f6dd\" y=\"85.47541\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"84.715624\" xlink:href=\"#m7d2684f6dd\" y=\"33.437873\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"153.333313\" xlink:href=\"#m7d2684f6dd\" y=\"87.323994\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.218307\" xlink:href=\"#m7d2684f6dd\" y=\"97.998936\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.180553\" xlink:href=\"#m7d2684f6dd\" y=\"84.9934\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.115271\" xlink:href=\"#m7d2684f6dd\" y=\"55.754821\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.222252\" xlink:href=\"#m7d2684f6dd\" y=\"81.537909\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.88171\" xlink:href=\"#m7d2684f6dd\" y=\"85.046785\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.271617\" xlink:href=\"#m7d2684f6dd\" y=\"79.438125\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.388655\" xlink:href=\"#m7d2684f6dd\" y=\"91.221444\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.132275\" xlink:href=\"#m7d2684f6dd\" y=\"80.81154\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.137484\" xlink:href=\"#m7d2684f6dd\" y=\"96.385164\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.945716\" xlink:href=\"#m7d2684f6dd\" y=\"81.344271\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.993553\" xlink:href=\"#m7d2684f6dd\" y=\"60.1772\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.243768\" xlink:href=\"#m7d2684f6dd\" y=\"67.999931\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.81984\" xlink:href=\"#m7d2684f6dd\" y=\"81.533138\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.263111\" xlink:href=\"#m7d2684f6dd\" y=\"71.723606\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.734589\" xlink:href=\"#m7d2684f6dd\" y=\"68.886276\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.049132\" xlink:href=\"#m7d2684f6dd\" y=\"62.92334\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"66.398721\" xlink:href=\"#m7d2684f6dd\" y=\"31.012647\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.911824\" xlink:href=\"#m7d2684f6dd\" y=\"103.483676\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.259455\" xlink:href=\"#m7d2684f6dd\" y=\"68.508107\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"156.822722\" xlink:href=\"#m7d2684f6dd\" y=\"98.1252\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.983639\" xlink:href=\"#m7d2684f6dd\" y=\"48.001965\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.656349\" xlink:href=\"#m7d2684f6dd\" y=\"78.702841\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.533038\" xlink:href=\"#m7d2684f6dd\" y=\"75.746978\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.486465\" xlink:href=\"#m7d2684f6dd\" y=\"94.54918\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.874194\" xlink:href=\"#m7d2684f6dd\" y=\"80.058184\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"199.594008\" xlink:href=\"#m7d2684f6dd\" y=\"104.106009\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.737744\" xlink:href=\"#m7d2684f6dd\" y=\"80.607495\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.60172\" xlink:href=\"#m7d2684f6dd\" y=\"94.320015\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.6909\" xlink:href=\"#m7d2684f6dd\" y=\"70.066888\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.282647\" xlink:href=\"#m7d2684f6dd\" y=\"82.535805\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.998563\" xlink:href=\"#m7d2684f6dd\" y=\"85.174263\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.652291\" xlink:href=\"#m7d2684f6dd\" y=\"82.568563\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.055988\" xlink:href=\"#m7d2684f6dd\" y=\"70.228577\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.07417\" xlink:href=\"#m7d2684f6dd\" y=\"75.485468\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"171.762037\" xlink:href=\"#m7d2684f6dd\" y=\"94.856167\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"164.918711\" xlink:href=\"#m7d2684f6dd\" y=\"96.704476\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.346669\" xlink:href=\"#m7d2684f6dd\" y=\"64.963546\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.989995\" xlink:href=\"#m7d2684f6dd\" y=\"52.137175\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"99.394869\" xlink:href=\"#m7d2684f6dd\" y=\"54.582797\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.053725\" xlink:href=\"#m7d2684f6dd\" y=\"86.311507\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.079171\" xlink:href=\"#m7d2684f6dd\" y=\"66.436201\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.529223\" xlink:href=\"#m7d2684f6dd\" y=\"78.678122\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.658282\" xlink:href=\"#m7d2684f6dd\" y=\"43.471774\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.194384\" xlink:href=\"#m7d2684f6dd\" y=\"96.071589\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"93.918624\" xlink:href=\"#m7d2684f6dd\" y=\"53.733883\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.967129\" xlink:href=\"#m7d2684f6dd\" y=\"73.248183\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.450164\" xlink:href=\"#m7d2684f6dd\" y=\"79.187792\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.317038\" xlink:href=\"#m7d2684f6dd\" y=\"93.182348\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.524301\" xlink:href=\"#m7d2684f6dd\" y=\"96.402125\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.969907\" xlink:href=\"#m7d2684f6dd\" y=\"62.907811\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"168.21752\" xlink:href=\"#m7d2684f6dd\" y=\"101.512168\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"165.168071\" xlink:href=\"#m7d2684f6dd\" y=\"100.925495\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.262637\" xlink:href=\"#m7d2684f6dd\" y=\"77.928748\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.909033\" xlink:href=\"#m7d2684f6dd\" y=\"68.333819\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.946997\" xlink:href=\"#m7d2684f6dd\" y=\"63.853039\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"166.142723\" xlink:href=\"#m7d2684f6dd\" y=\"88.851277\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.874327\" xlink:href=\"#m7d2684f6dd\" y=\"68.316023\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.034155\" xlink:href=\"#m7d2684f6dd\" y=\"70.341283\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"185.716993\" xlink:href=\"#m7d2684f6dd\" y=\"108.449429\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"89.491873\" xlink:href=\"#m7d2684f6dd\" y=\"52.400152\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.375755\" xlink:href=\"#m7d2684f6dd\" y=\"61.35704\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.843843\" xlink:href=\"#m7d2684f6dd\" y=\"90.607091\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.748096\" xlink:href=\"#m7d2684f6dd\" y=\"87.823567\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.412828\" xlink:href=\"#m7d2684f6dd\" y=\"75.494778\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.755663\" xlink:href=\"#m7d2684f6dd\" y=\"66.278615\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.557075\" xlink:href=\"#m7d2684f6dd\" y=\"58.257914\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"72.566972\" xlink:href=\"#m7d2684f6dd\" y=\"39.686921\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"156.746582\" xlink:href=\"#m7d2684f6dd\" y=\"106.158961\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.913226\" xlink:href=\"#m7d2684f6dd\" y=\"87.543883\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.386401\" xlink:href=\"#m7d2684f6dd\" y=\"79.119789\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"94.227266\" xlink:href=\"#m7d2684f6dd\" y=\"57.99098\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.629847\" xlink:href=\"#m7d2684f6dd\" y=\"80.67012\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"167.363781\" xlink:href=\"#m7d2684f6dd\" y=\"78.868988\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.530462\" xlink:href=\"#m7d2684f6dd\" y=\"88.132525\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.384242\" xlink:href=\"#m7d2684f6dd\" y=\"72.929018\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"172.411303\" xlink:href=\"#m7d2684f6dd\" y=\"111.499355\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.921947\" xlink:href=\"#m7d2684f6dd\" y=\"54.276608\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.585673\" xlink:href=\"#m7d2684f6dd\" y=\"79.350751\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"96.520551\" xlink:href=\"#m7d2684f6dd\" y=\"52.673278\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.308374\" xlink:href=\"#m7d2684f6dd\" y=\"95.648854\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"216.56703\" xlink:href=\"#m7d2684f6dd\" y=\"118.876091\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.192299\" xlink:href=\"#m7d2684f6dd\" y=\"76.053324\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"79.106009\" xlink:href=\"#m7d2684f6dd\" y=\"46.894972\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.474467\" xlink:href=\"#m7d2684f6dd\" y=\"71.195401\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.465982\" xlink:href=\"#m7d2684f6dd\" y=\"77.105086\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.379957\" xlink:href=\"#m7d2684f6dd\" y=\"74.373257\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.747318\" xlink:href=\"#m7d2684f6dd\" y=\"86.43446\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.974784\" xlink:href=\"#m7d2684f6dd\" y=\"67.439592\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.671313\" xlink:href=\"#m7d2684f6dd\" y=\"90.541155\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"162.672938\" xlink:href=\"#m7d2684f6dd\" y=\"89.373346\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.321441\" xlink:href=\"#m7d2684f6dd\" y=\"87.835425\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.705853\" xlink:href=\"#m7d2684f6dd\" y=\"77.899934\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"87.409972\" xlink:href=\"#m7d2684f6dd\" y=\"37.210113\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.684259\" xlink:href=\"#m7d2684f6dd\" y=\"72.846967\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"74.857526\" xlink:href=\"#m7d2684f6dd\" y=\"41.026148\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"92.571971\" xlink:href=\"#m7d2684f6dd\" y=\"56.190211\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"80.32929\" xlink:href=\"#m7d2684f6dd\" y=\"40.094818\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.870362\" xlink:href=\"#m7d2684f6dd\" y=\"89.692478\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.181034\" xlink:href=\"#m7d2684f6dd\" y=\"66.85216\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"162.265801\" xlink:href=\"#m7d2684f6dd\" y=\"91.932388\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.94688\" xlink:href=\"#m7d2684f6dd\" y=\"83.482642\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"94.294478\" xlink:href=\"#m7d2684f6dd\" y=\"70.778384\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.587521\" xlink:href=\"#m7d2684f6dd\" y=\"108.418722\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.442552\" xlink:href=\"#m7d2684f6dd\" y=\"70.360503\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.265088\" xlink:href=\"#m7d2684f6dd\" y=\"102.039757\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.958204\" xlink:href=\"#m7d2684f6dd\" y=\"83.230194\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.13126\" xlink:href=\"#m7d2684f6dd\" y=\"84.616343\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.513821\" xlink:href=\"#m7d2684f6dd\" y=\"66.984742\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.78407\" xlink:href=\"#m7d2684f6dd\" y=\"95.939317\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.242534\" xlink:href=\"#m7d2684f6dd\" y=\"63.643889\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.369937\" xlink:href=\"#m7d2684f6dd\" y=\"83.24128\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"88.501207\" xlink:href=\"#m7d2684f6dd\" y=\"53.093154\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.154937\" xlink:href=\"#m7d2684f6dd\" y=\"82.097474\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.342177\" xlink:href=\"#m7d2684f6dd\" y=\"61.343242\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.643148\" xlink:href=\"#m7d2684f6dd\" y=\"60.409475\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"96.69128\" xlink:href=\"#m7d2684f6dd\" y=\"67.904572\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.94649\" xlink:href=\"#m7d2684f6dd\" y=\"55.039035\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"168.139766\" xlink:href=\"#m7d2684f6dd\" y=\"105.883498\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.865014\" xlink:href=\"#m7d2684f6dd\" y=\"81.940231\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"158.795393\" xlink:href=\"#m7d2684f6dd\" y=\"99.597497\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"78.889953\" xlink:href=\"#m7d2684f6dd\" y=\"42.146417\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.244725\" xlink:href=\"#m7d2684f6dd\" y=\"76.75311\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"156.77915\" xlink:href=\"#m7d2684f6dd\" y=\"95.620715\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.625219\" xlink:href=\"#m7d2684f6dd\" y=\"79.587934\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"83.272061\" xlink:href=\"#m7d2684f6dd\" y=\"50.387984\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.3231\" xlink:href=\"#m7d2684f6dd\" y=\"92.558245\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.041775\" xlink:href=\"#m7d2684f6dd\" y=\"62.700859\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.37624\" xlink:href=\"#m7d2684f6dd\" y=\"54.599855\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.752729\" xlink:href=\"#m7d2684f6dd\" y=\"96.016202\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"162.190349\" xlink:href=\"#m7d2684f6dd\" y=\"105.273026\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.69023\" xlink:href=\"#m7d2684f6dd\" y=\"72.922893\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.902354\" xlink:href=\"#m7d2684f6dd\" y=\"90.197917\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"167.391707\" xlink:href=\"#m7d2684f6dd\" y=\"107.453893\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"87.176347\" xlink:href=\"#m7d2684f6dd\" y=\"55.850831\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.63055\" xlink:href=\"#m7d2684f6dd\" y=\"76.7299\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.678396\" xlink:href=\"#m7d2684f6dd\" y=\"78.090291\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.131691\" xlink:href=\"#m7d2684f6dd\" y=\"60.718939\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.839602\" xlink:href=\"#m7d2684f6dd\" y=\"79.192483\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.367864\" xlink:href=\"#m7d2684f6dd\" y=\"80.817801\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.540287\" xlink:href=\"#m7d2684f6dd\" y=\"70.226307\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.337392\" xlink:href=\"#m7d2684f6dd\" y=\"67.759162\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.022167\" xlink:href=\"#m7d2684f6dd\" y=\"66.610655\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.134908\" xlink:href=\"#m7d2684f6dd\" y=\"87.064084\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.013672\" xlink:href=\"#m7d2684f6dd\" y=\"78.977057\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.845246\" xlink:href=\"#m7d2684f6dd\" y=\"71.351956\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.595802\" xlink:href=\"#m7d2684f6dd\" y=\"73.210389\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.971069\" xlink:href=\"#m7d2684f6dd\" y=\"58.150285\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.046546\" xlink:href=\"#m7d2684f6dd\" y=\"77.832208\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.242469\" xlink:href=\"#m7d2684f6dd\" y=\"69.682361\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.322127\" xlink:href=\"#m7d2684f6dd\" y=\"55.176544\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.906977\" xlink:href=\"#m7d2684f6dd\" y=\"73.860608\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.359932\" xlink:href=\"#m7d2684f6dd\" y=\"68.993742\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.752275\" xlink:href=\"#m7d2684f6dd\" y=\"92.455678\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.495493\" xlink:href=\"#m7d2684f6dd\" y=\"84.300623\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.907389\" xlink:href=\"#m7d2684f6dd\" y=\"112.710914\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.369293\" xlink:href=\"#m7d2684f6dd\" y=\"49.303627\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.754196\" xlink:href=\"#m7d2684f6dd\" y=\"74.924024\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.997081\" xlink:href=\"#m7d2684f6dd\" y=\"76.060421\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.381704\" xlink:href=\"#m7d2684f6dd\" y=\"79.217008\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.267275\" xlink:href=\"#m7d2684f6dd\" y=\"61.813943\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"106.093666\" xlink:href=\"#m7d2684f6dd\" y=\"76.552646\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.754457\" xlink:href=\"#m7d2684f6dd\" y=\"92.258085\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.276425\" xlink:href=\"#m7d2684f6dd\" y=\"74.481301\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.790505\" xlink:href=\"#m7d2684f6dd\" y=\"79.888436\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.884071\" xlink:href=\"#m7d2684f6dd\" y=\"67.674494\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.681459\" xlink:href=\"#m7d2684f6dd\" y=\"70.115118\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.681075\" xlink:href=\"#m7d2684f6dd\" y=\"86.280658\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.992177\" xlink:href=\"#m7d2684f6dd\" y=\"102.199719\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.312281\" xlink:href=\"#m7d2684f6dd\" y=\"59.303878\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.888102\" xlink:href=\"#m7d2684f6dd\" y=\"81.521128\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.294742\" xlink:href=\"#m7d2684f6dd\" y=\"69.255186\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"104.953796\" xlink:href=\"#m7d2684f6dd\" y=\"67.815676\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"166.448349\" xlink:href=\"#m7d2684f6dd\" y=\"102.345595\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.10875\" xlink:href=\"#m7d2684f6dd\" y=\"66.800355\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.820687\" xlink:href=\"#m7d2684f6dd\" y=\"65.87248\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.326771\" xlink:href=\"#m7d2684f6dd\" y=\"77.009776\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.635693\" xlink:href=\"#m7d2684f6dd\" y=\"57.72087\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.877927\" xlink:href=\"#m7d2684f6dd\" y=\"96.865389\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.560418\" xlink:href=\"#m7d2684f6dd\" y=\"96.244449\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"169.807766\" xlink:href=\"#m7d2684f6dd\" y=\"104.360732\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.020762\" xlink:href=\"#m7d2684f6dd\" y=\"57.266445\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.192376\" xlink:href=\"#m7d2684f6dd\" y=\"73.399778\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.523099\" xlink:href=\"#m7d2684f6dd\" y=\"54.431951\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.339305\" xlink:href=\"#m7d2684f6dd\" y=\"71.956742\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.84861\" xlink:href=\"#m7d2684f6dd\" y=\"77.648478\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.085763\" xlink:href=\"#m7d2684f6dd\" y=\"81.716617\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.872196\" xlink:href=\"#m7d2684f6dd\" y=\"76.721045\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"91.66364\" xlink:href=\"#m7d2684f6dd\" y=\"41.82003\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.266293\" xlink:href=\"#m7d2684f6dd\" y=\"47.928054\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"92.325269\" xlink:href=\"#m7d2684f6dd\" y=\"66.783181\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"162.085582\" xlink:href=\"#m7d2684f6dd\" y=\"100.908126\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"159.211621\" xlink:href=\"#m7d2684f6dd\" y=\"90.501357\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.297884\" xlink:href=\"#m7d2684f6dd\" y=\"72.761292\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.972017\" xlink:href=\"#m7d2684f6dd\" y=\"85.306725\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.009142\" xlink:href=\"#m7d2684f6dd\" y=\"93.337843\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.297768\" xlink:href=\"#m7d2684f6dd\" y=\"76.184567\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.189732\" xlink:href=\"#m7d2684f6dd\" y=\"81.598944\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.694543\" xlink:href=\"#m7d2684f6dd\" y=\"61.544132\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.755919\" xlink:href=\"#m7d2684f6dd\" y=\"65.577233\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.807045\" xlink:href=\"#m7d2684f6dd\" y=\"67.338358\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"100.853112\" xlink:href=\"#m7d2684f6dd\" y=\"75.582069\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.351478\" xlink:href=\"#m7d2684f6dd\" y=\"79.302177\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.334439\" xlink:href=\"#m7d2684f6dd\" y=\"90.107414\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.56653\" xlink:href=\"#m7d2684f6dd\" y=\"79.68773\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.053249\" xlink:href=\"#m7d2684f6dd\" y=\"98.44107\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.042753\" xlink:href=\"#m7d2684f6dd\" y=\"83.003385\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.606862\" xlink:href=\"#m7d2684f6dd\" y=\"45.0776\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.562007\" xlink:href=\"#m7d2684f6dd\" y=\"67.983729\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.796469\" xlink:href=\"#m7d2684f6dd\" y=\"73.654242\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"183.972789\" xlink:href=\"#m7d2684f6dd\" y=\"115.331145\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"95.200121\" xlink:href=\"#m7d2684f6dd\" y=\"51.102251\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.208415\" xlink:href=\"#m7d2684f6dd\" y=\"86.535688\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.594928\" xlink:href=\"#m7d2684f6dd\" y=\"68.547694\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.292288\" xlink:href=\"#m7d2684f6dd\" y=\"89.874444\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.716435\" xlink:href=\"#m7d2684f6dd\" y=\"81.881953\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"160.998361\" xlink:href=\"#m7d2684f6dd\" y=\"101.441495\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.66915\" xlink:href=\"#m7d2684f6dd\" y=\"80.819995\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.760488\" xlink:href=\"#m7d2684f6dd\" y=\"78.901049\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.352046\" xlink:href=\"#m7d2684f6dd\" y=\"84.493156\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.399132\" xlink:href=\"#m7d2684f6dd\" y=\"68.844236\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.947679\" xlink:href=\"#m7d2684f6dd\" y=\"58.394764\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.091758\" xlink:href=\"#m7d2684f6dd\" y=\"70.810774\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"68.750063\" xlink:href=\"#m7d2684f6dd\" y=\"46.583663\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"156.275255\" xlink:href=\"#m7d2684f6dd\" y=\"95.227928\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"88.290418\" xlink:href=\"#m7d2684f6dd\" y=\"49.417534\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.519237\" xlink:href=\"#m7d2684f6dd\" y=\"66.276092\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.822723\" xlink:href=\"#m7d2684f6dd\" y=\"67.141385\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.595511\" xlink:href=\"#m7d2684f6dd\" y=\"106.910417\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.966178\" xlink:href=\"#m7d2684f6dd\" y=\"80.135935\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"161.703692\" xlink:href=\"#m7d2684f6dd\" y=\"89.935476\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.996894\" xlink:href=\"#m7d2684f6dd\" y=\"67.817376\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.347664\" xlink:href=\"#m7d2684f6dd\" y=\"61.231404\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.512185\" xlink:href=\"#m7d2684f6dd\" y=\"76.720762\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.546051\" xlink:href=\"#m7d2684f6dd\" y=\"59.620076\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"99.869128\" xlink:href=\"#m7d2684f6dd\" y=\"70.403209\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.789307\" xlink:href=\"#m7d2684f6dd\" y=\"62.187717\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.85129\" xlink:href=\"#m7d2684f6dd\" y=\"69.168206\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.824545\" xlink:href=\"#m7d2684f6dd\" y=\"84.809471\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.120331\" xlink:href=\"#m7d2684f6dd\" y=\"83.266959\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.950347\" xlink:href=\"#m7d2684f6dd\" y=\"67.042027\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.720603\" xlink:href=\"#m7d2684f6dd\" y=\"72.506476\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"87.393735\" xlink:href=\"#m7d2684f6dd\" y=\"59.295752\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.912466\" xlink:href=\"#m7d2684f6dd\" y=\"58.071193\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.167244\" xlink:href=\"#m7d2684f6dd\" y=\"59.398364\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.472887\" xlink:href=\"#m7d2684f6dd\" y=\"71.269453\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.300283\" xlink:href=\"#m7d2684f6dd\" y=\"51.717135\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.971912\" xlink:href=\"#m7d2684f6dd\" y=\"84.095462\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.621868\" xlink:href=\"#m7d2684f6dd\" y=\"54.974578\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.4203\" xlink:href=\"#m7d2684f6dd\" y=\"89.081087\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.906756\" xlink:href=\"#m7d2684f6dd\" y=\"92.352406\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"149.309041\" xlink:href=\"#m7d2684f6dd\" y=\"82.585556\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.860803\" xlink:href=\"#m7d2684f6dd\" y=\"96.437451\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.453541\" xlink:href=\"#m7d2684f6dd\" y=\"90.13849\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.768793\" xlink:href=\"#m7d2684f6dd\" y=\"78.498839\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"101.943854\" xlink:href=\"#m7d2684f6dd\" y=\"53.729205\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.068029\" xlink:href=\"#m7d2684f6dd\" y=\"74.316893\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.836185\" xlink:href=\"#m7d2684f6dd\" y=\"68.111062\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.730568\" xlink:href=\"#m7d2684f6dd\" y=\"63.533416\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"83.562259\" xlink:href=\"#m7d2684f6dd\" y=\"34.040381\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.569917\" xlink:href=\"#m7d2684f6dd\" y=\"63.533007\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.220609\" xlink:href=\"#m7d2684f6dd\" y=\"62.151326\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.666783\" xlink:href=\"#m7d2684f6dd\" y=\"79.122926\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.161923\" xlink:href=\"#m7d2684f6dd\" y=\"90.866969\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.593033\" xlink:href=\"#m7d2684f6dd\" y=\"76.838026\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"92.047012\" xlink:href=\"#m7d2684f6dd\" y=\"61.918763\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.884742\" xlink:href=\"#m7d2684f6dd\" y=\"59.316863\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.243239\" xlink:href=\"#m7d2684f6dd\" y=\"57.267836\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.920289\" xlink:href=\"#m7d2684f6dd\" y=\"75.53849\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.074533\" xlink:href=\"#m7d2684f6dd\" y=\"79.351642\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"94.236068\" xlink:href=\"#m7d2684f6dd\" y=\"51.636206\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.494433\" xlink:href=\"#m7d2684f6dd\" y=\"99.852403\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.23151\" xlink:href=\"#m7d2684f6dd\" y=\"93.450115\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.18434\" xlink:href=\"#m7d2684f6dd\" y=\"85.204328\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.801982\" xlink:href=\"#m7d2684f6dd\" y=\"67.708061\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"176.441066\" xlink:href=\"#m7d2684f6dd\" y=\"123.495047\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.129106\" xlink:href=\"#m7d2684f6dd\" y=\"73.376144\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.156372\" xlink:href=\"#m7d2684f6dd\" y=\"71.650466\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.673066\" xlink:href=\"#m7d2684f6dd\" y=\"58.565723\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.808493\" xlink:href=\"#m7d2684f6dd\" y=\"64.360849\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.118887\" xlink:href=\"#m7d2684f6dd\" y=\"68.197516\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.533994\" xlink:href=\"#m7d2684f6dd\" y=\"68.743063\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.567683\" xlink:href=\"#m7d2684f6dd\" y=\"82.793073\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.941611\" xlink:href=\"#m7d2684f6dd\" y=\"64.643558\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.647094\" xlink:href=\"#m7d2684f6dd\" y=\"88.337315\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.738474\" xlink:href=\"#m7d2684f6dd\" y=\"54.812744\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.960243\" xlink:href=\"#m7d2684f6dd\" y=\"92.230991\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.749609\" xlink:href=\"#m7d2684f6dd\" y=\"64.263433\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"159.157972\" xlink:href=\"#m7d2684f6dd\" y=\"102.116232\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"160.875938\" xlink:href=\"#m7d2684f6dd\" y=\"102.881689\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.722088\" xlink:href=\"#m7d2684f6dd\" y=\"79.70289\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.856231\" xlink:href=\"#m7d2684f6dd\" y=\"67.821946\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.366764\" xlink:href=\"#m7d2684f6dd\" y=\"82.095085\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"107.791437\" xlink:href=\"#m7d2684f6dd\" y=\"65.980424\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.247002\" xlink:href=\"#m7d2684f6dd\" y=\"62.821498\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"127.442066\" xlink:href=\"#m7d2684f6dd\" y=\"74.586272\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.78809\" xlink:href=\"#m7d2684f6dd\" y=\"78.224415\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.474031\" xlink:href=\"#m7d2684f6dd\" y=\"94.535967\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.984247\" xlink:href=\"#m7d2684f6dd\" y=\"73.738972\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.544797\" xlink:href=\"#m7d2684f6dd\" y=\"75.252704\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.281965\" xlink:href=\"#m7d2684f6dd\" y=\"93.336903\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.403058\" xlink:href=\"#m7d2684f6dd\" y=\"75.522914\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.76429\" xlink:href=\"#m7d2684f6dd\" y=\"84.962803\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"109.697307\" xlink:href=\"#m7d2684f6dd\" y=\"58.062083\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"99.380525\" xlink:href=\"#m7d2684f6dd\" y=\"67.987488\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"166.888937\" xlink:href=\"#m7d2684f6dd\" y=\"94.907028\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.178076\" xlink:href=\"#m7d2684f6dd\" y=\"60.902926\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.490225\" xlink:href=\"#m7d2684f6dd\" y=\"69.441694\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.61819\" xlink:href=\"#m7d2684f6dd\" y=\"72.912451\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.895672\" xlink:href=\"#m7d2684f6dd\" y=\"72.666767\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"71.915168\" xlink:href=\"#m7d2684f6dd\" y=\"31.476935\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"88.111006\" xlink:href=\"#m7d2684f6dd\" y=\"63.341575\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.16659\" xlink:href=\"#m7d2684f6dd\" y=\"84.660309\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.454603\" xlink:href=\"#m7d2684f6dd\" y=\"58.574691\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.948888\" xlink:href=\"#m7d2684f6dd\" y=\"81.018848\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.719395\" xlink:href=\"#m7d2684f6dd\" y=\"98.63513\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.137093\" xlink:href=\"#m7d2684f6dd\" y=\"90.05057\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.765431\" xlink:href=\"#m7d2684f6dd\" y=\"80.298509\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.050697\" xlink:href=\"#m7d2684f6dd\" y=\"78.464247\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.605431\" xlink:href=\"#m7d2684f6dd\" y=\"68.26265\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"105.924221\" xlink:href=\"#m7d2684f6dd\" y=\"70.357947\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"158.413946\" xlink:href=\"#m7d2684f6dd\" y=\"103.403135\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"154.135548\" xlink:href=\"#m7d2684f6dd\" y=\"98.972513\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"117.318421\" xlink:href=\"#m7d2684f6dd\" y=\"71.945551\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"111.021423\" xlink:href=\"#m7d2684f6dd\" y=\"77.070232\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.982424\" xlink:href=\"#m7d2684f6dd\" y=\"60.439596\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.770573\" xlink:href=\"#m7d2684f6dd\" y=\"78.482594\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.81719\" xlink:href=\"#m7d2684f6dd\" y=\"58.754533\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"73.126035\" xlink:href=\"#m7d2684f6dd\" y=\"41.362025\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"88.62697\" xlink:href=\"#m7d2684f6dd\" y=\"48.010568\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"126.066617\" xlink:href=\"#m7d2684f6dd\" y=\"72.021801\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.564032\" xlink:href=\"#m7d2684f6dd\" y=\"85.534639\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.507905\" xlink:href=\"#m7d2684f6dd\" y=\"74.220258\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.706231\" xlink:href=\"#m7d2684f6dd\" y=\"64.566019\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.880864\" xlink:href=\"#m7d2684f6dd\" y=\"72.629308\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.093125\" xlink:href=\"#m7d2684f6dd\" y=\"107.901807\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"103.387571\" xlink:href=\"#m7d2684f6dd\" y=\"54.844784\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.646207\" xlink:href=\"#m7d2684f6dd\" y=\"60.261827\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.683616\" xlink:href=\"#m7d2684f6dd\" y=\"80.576836\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"141.331976\" xlink:href=\"#m7d2684f6dd\" y=\"78.485981\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"89.916629\" xlink:href=\"#m7d2684f6dd\" y=\"35.079475\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.895413\" xlink:href=\"#m7d2684f6dd\" y=\"95.159687\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"140.118433\" xlink:href=\"#m7d2684f6dd\" y=\"88.730819\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"197.212218\" xlink:href=\"#m7d2684f6dd\" y=\"126.617905\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.311841\" xlink:href=\"#m7d2684f6dd\" y=\"65.971171\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"93.777509\" xlink:href=\"#m7d2684f6dd\" y=\"45.741124\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.06815\" xlink:href=\"#m7d2684f6dd\" y=\"77.611544\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.478157\" xlink:href=\"#m7d2684f6dd\" y=\"50.488582\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"145.574226\" xlink:href=\"#m7d2684f6dd\" y=\"99.930505\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.09749\" xlink:href=\"#m7d2684f6dd\" y=\"53.417249\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"153.786394\" xlink:href=\"#m7d2684f6dd\" y=\"91.110558\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.85738\" xlink:href=\"#m7d2684f6dd\" y=\"76.885808\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"134.846827\" xlink:href=\"#m7d2684f6dd\" y=\"73.02423\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.731206\" xlink:href=\"#m7d2684f6dd\" y=\"85.309807\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.215722\" xlink:href=\"#m7d2684f6dd\" y=\"94.526709\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"82.815464\" xlink:href=\"#m7d2684f6dd\" y=\"51.967778\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"112.133693\" xlink:href=\"#m7d2684f6dd\" y=\"53.311678\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.236207\" xlink:href=\"#m7d2684f6dd\" y=\"68.437872\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"122.066912\" xlink:href=\"#m7d2684f6dd\" y=\"98.853419\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"133.840203\" xlink:href=\"#m7d2684f6dd\" y=\"70.082269\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.43894\" xlink:href=\"#m7d2684f6dd\" y=\"64.327276\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.760527\" xlink:href=\"#m7d2684f6dd\" y=\"85.415922\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.248812\" xlink:href=\"#m7d2684f6dd\" y=\"82.58558\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"120.158958\" xlink:href=\"#m7d2684f6dd\" y=\"65.828745\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"132.374262\" xlink:href=\"#m7d2684f6dd\" y=\"90.630022\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"97.174722\" xlink:href=\"#m7d2684f6dd\" y=\"45.583906\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.161758\" xlink:href=\"#m7d2684f6dd\" y=\"73.675366\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.849206\" xlink:href=\"#m7d2684f6dd\" y=\"68.991595\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"93.276829\" xlink:href=\"#m7d2684f6dd\" y=\"51.604538\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.406523\" xlink:href=\"#m7d2684f6dd\" y=\"100.341901\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.181356\" xlink:href=\"#m7d2684f6dd\" y=\"86.77622\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.106048\" xlink:href=\"#m7d2684f6dd\" y=\"62.319138\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"114.967283\" xlink:href=\"#m7d2684f6dd\" y=\"59.08164\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.102347\" xlink:href=\"#m7d2684f6dd\" y=\"59.997846\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"113.224484\" xlink:href=\"#m7d2684f6dd\" y=\"70.332474\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"83.118008\" xlink:href=\"#m7d2684f6dd\" y=\"50.197776\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.528087\" xlink:href=\"#m7d2684f6dd\" y=\"85.869332\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.109454\" xlink:href=\"#m7d2684f6dd\" y=\"62.456362\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"123.879147\" xlink:href=\"#m7d2684f6dd\" y=\"58.898238\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"116.7309\" xlink:href=\"#m7d2684f6dd\" y=\"62.326007\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"170.768607\" xlink:href=\"#m7d2684f6dd\" y=\"92.238533\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"128.78663\" xlink:href=\"#m7d2684f6dd\" y=\"87.380788\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"162.474016\" xlink:href=\"#m7d2684f6dd\" y=\"96.900239\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"152.555707\" xlink:href=\"#m7d2684f6dd\" y=\"94.354641\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.109978\" xlink:href=\"#m7d2684f6dd\" y=\"83.652255\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"97.105825\" xlink:href=\"#m7d2684f6dd\" y=\"45.364862\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.713866\" xlink:href=\"#m7d2684f6dd\" y=\"88.243338\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"98.683051\" xlink:href=\"#m7d2684f6dd\" y=\"61.436816\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"104.122535\" xlink:href=\"#m7d2684f6dd\" y=\"63.685207\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"131.297599\" xlink:href=\"#m7d2684f6dd\" y=\"90.31301\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"137.071511\" xlink:href=\"#m7d2684f6dd\" y=\"83.739587\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"73.681184\" xlink:href=\"#m7d2684f6dd\" y=\"40.676888\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"144.376177\" xlink:href=\"#m7d2684f6dd\" y=\"91.404124\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.356375\" xlink:href=\"#m7d2684f6dd\" y=\"70.402679\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"84.635677\" xlink:href=\"#m7d2684f6dd\" y=\"61.335031\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.862218\" xlink:href=\"#m7d2684f6dd\" y=\"88.295116\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"139.111401\" xlink:href=\"#m7d2684f6dd\" y=\"80.228746\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.671658\" xlink:href=\"#m7d2684f6dd\" y=\"69.668935\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"167.674641\" xlink:href=\"#m7d2684f6dd\" y=\"120.758874\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"129.32682\" xlink:href=\"#m7d2684f6dd\" y=\"66.193666\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.020988\" xlink:href=\"#m7d2684f6dd\" y=\"87.308535\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"143.886821\" xlink:href=\"#m7d2684f6dd\" y=\"80.40572\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.373852\" xlink:href=\"#m7d2684f6dd\" y=\"72.696532\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"146.215657\" xlink:href=\"#m7d2684f6dd\" y=\"81.285949\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"135.513654\" xlink:href=\"#m7d2684f6dd\" y=\"72.448921\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"150.433936\" xlink:href=\"#m7d2684f6dd\" y=\"83.086958\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"76.340829\" xlink:href=\"#m7d2684f6dd\" y=\"50.20926\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.030747\" xlink:href=\"#m7d2684f6dd\" y=\"63.305933\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.087094\" xlink:href=\"#m7d2684f6dd\" y=\"57.857977\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"102.389576\" xlink:href=\"#m7d2684f6dd\" y=\"57.078246\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"162.787485\" xlink:href=\"#m7d2684f6dd\" y=\"110.139862\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"142.328378\" xlink:href=\"#m7d2684f6dd\" y=\"70.621557\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"110.963964\" xlink:href=\"#m7d2684f6dd\" y=\"76.277798\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.143851\" xlink:href=\"#m7d2684f6dd\" y=\"93.73088\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"130.823163\" xlink:href=\"#m7d2684f6dd\" y=\"79.738228\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"136.58069\" xlink:href=\"#m7d2684f6dd\" y=\"84.922725\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"155.893269\" xlink:href=\"#m7d2684f6dd\" y=\"94.796796\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"119.31163\" xlink:href=\"#m7d2684f6dd\" y=\"68.600195\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"125.996794\" xlink:href=\"#m7d2684f6dd\" y=\"73.825612\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"159.312129\" xlink:href=\"#m7d2684f6dd\" y=\"87.722811\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"108.962798\" xlink:href=\"#m7d2684f6dd\" y=\"62.391328\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"151.641588\" xlink:href=\"#m7d2684f6dd\" y=\"87.833797\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"100.81469\" xlink:href=\"#m7d2684f6dd\" y=\"47.934905\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"147.81478\" xlink:href=\"#m7d2684f6dd\" y=\"90.592654\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"148.747617\" xlink:href=\"#m7d2684f6dd\" y=\"88.587821\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"115.3316\" xlink:href=\"#m7d2684f6dd\" y=\"87.48952\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"138.177869\" xlink:href=\"#m7d2684f6dd\" y=\"82.53107\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"124.497656\" xlink:href=\"#m7d2684f6dd\" y=\"66.98681\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"121.147388\" xlink:href=\"#m7d2684f6dd\" y=\"82.966413\"/>\n",
       "     <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"87.05678\" xlink:href=\"#m7d2684f6dd\" y=\"47.040862\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m756658d1ef\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"80.343764\" xlink:href=\"#m756658d1ef\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- −2 -->\n",
       "      <g transform=\"translate(72.97267 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"125.937807\" xlink:href=\"#m756658d1ef\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(122.756557 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"171.531849\" xlink:href=\"#m756658d1ef\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(168.350599 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"217.125892\" xlink:href=\"#m756658d1ef\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(213.944642 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m1d5b4e60ed\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"35.304688\" xlink:href=\"#m1d5b4e60ed\" y=\"135.699552\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- −10 -->\n",
       "      <g transform=\"translate(7.2 139.498771)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"147.412109\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"35.304688\" xlink:href=\"#m1d5b4e60ed\" y=\"92.786404\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(21.942187 96.585623)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"35.304688\" xlink:href=\"#m1d5b4e60ed\" y=\"49.873256\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 10 -->\n",
       "      <g transform=\"translate(15.579687 53.672475)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 35.304688 143.1 \n",
       "L 35.304688 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 230.604688 143.1 \n",
       "L 230.604688 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 35.304688 143.1 \n",
       "L 230.604688 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 35.304688 7.2 \n",
       "L 230.604688 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p4d898880ab\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"35.304688\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "from IPython import display\n",
    "def use_svg_display():\n",
    "    # 用矢量图显示\n",
    "    display.set_matplotlib_formats('svg')\n",
    "    \n",
    "def set_figsize(figsize=(3.5, 2.5)):\n",
    "    use_svg_display()\n",
    "    # 设置图的尺寸\n",
    "    plt.rcParams['figure.figsize'] = figsize\n",
    "\n",
    "set_figsize()\n",
    "# 加分号只显示图\n",
    "plt.scatter(features[:, 1].numpy(), labels.numpy(), 1);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "将数据集分割为min_batch"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "def data_iter(batch_size, features, labels):\n",
    "    num_examples = len(features)\n",
    "    indices = list(range(num_examples))\n",
    "    # 样本的读取顺序是随机的\n",
    "    random.shuffle(indices)\n",
    "    for i in range(0, num_examples, batch_size):\n",
    "        # 最后一次可能不足一个batch\n",
    "        j = torch.LongTensor(indices[i: min(i+batch_size, num_examples)])\n",
    "        # index_select函数根据索引返回对应元素\n",
    "        yield features.index_select(0, j), labels.index_select(0, j)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[-1.6462,  0.1709],\n",
      "        [ 0.4558,  0.6235],\n",
      "        [ 0.3373,  0.3770],\n",
      "        [ 0.0307,  0.2264],\n",
      "        [ 2.5076, -0.0314],\n",
      "        [ 0.0725,  0.5367],\n",
      "        [-0.1730,  1.9244],\n",
      "        [-0.4646, -0.8933],\n",
      "        [-0.0945,  2.4027],\n",
      "        [ 0.5763, -0.0477]]) tensor([ 0.3121,  2.9821,  3.5983,  3.4935,  9.3410,  2.5399, -2.6972,  6.3159,\n",
      "        -4.1622,  5.5037])\n"
     ]
    }
   ],
   "source": [
    "batch_size = 10\n",
    "for X, y in data_iter(batch_size, features, labels):\n",
    "    print(X, y)\n",
    "    break"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "初始化模型参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "w = torch.tensor(np.random.normal(0, 0.01, (num_inputs, 1)), dtype=torch.float32)\n",
    "b = torch.zeros(1, dtype=torch.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([0.], requires_grad=True)"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "w.requires_grad_(requires_grad=True)\n",
    "b.requires_grad_(requires_grad=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "线性回归模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "def linreg(X, w, b):\n",
    "    return torch.mm(X, w) + b"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义损失函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "def squared_loss(y_hat, y):\n",
    "    return (y_hat - y.view(y_hat.size())) ** 2 / 2 "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义优化算法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "def sgd(params, lr, batch_size):\n",
    "    for param in params:\n",
    "        param.data -= lr * param.grad / batch_size"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss 0.047065\n",
      "epoch 2, loss 0.000212\n",
      "epoch 3, loss 0.000052\n"
     ]
    }
   ],
   "source": [
    "lr = 0.03\n",
    "num_epochs = 3\n",
    "net = linreg\n",
    "loss = squared_loss\n",
    "# 训练模型一共需要num_epochs个迭代周期\n",
    "for epoch in range(num_epochs):\n",
    "    # 在每一个迭代周期中，会使用训练集中所有样本一次（假设样本数能够被批量大小整除）。\n",
    "    # X和y分别是小批量样本的特征和标签\n",
    "    for X, y in data_iter(batch_size, features, labels):\n",
    "        # l是有关小批量X和y的损失\n",
    "        l = loss(net(X, w, b), y).sum()\n",
    "        # 小批量损失对模型参数求梯度\n",
    "        l.backward()\n",
    "        # 使用小批量随机梯度下降迭代模型参数\n",
    "        sgd([w, b], lr, batch_size)\n",
    "        # 梯度清零\n",
    "        w.grad.data.zero_()\n",
    "        b.grad.data.zero_()\n",
    "    train_l = loss(net(features, w, b), labels)\n",
    "    print('epoch %d, loss %f' % (epoch+1, train_l.mean().item()))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "模型参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "([2, -3.4],\n",
       " tensor([[ 1.9996],\n",
       "         [-3.3996]], requires_grad=True))"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "true_w, w"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(4.2, tensor([4.1998], requires_grad=True))"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "true_b, b"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.3 线性回归的简洁实现"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "生成数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_inputs = 2\n",
    "num_examples = 1000\n",
    "true_w = [2, -3.4]\n",
    "true_b = 4.2\n",
    "features = torch.tensor(np.random.normal(0, 1, (num_examples, num_inputs)), dtype=torch.float32)\n",
    "labels = true_w[0] * features[:, 0] + true_w[1] * features[:, 1] + true_b\n",
    "labels += torch.tensor(np.random.normal(0, 0.01, size=labels.size()), dtype=torch.float32)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "读取数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch.utils.data as Data\n",
    "batch_size = 10\n",
    "# 将训练数据的特征和标签组合\n",
    "dataset = Data.TensorDataset(features, labels)\n",
    "# 随机读取小批量\n",
    "data_iter = Data.DataLoader(dataset, batch_size, shuffle=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[-1.3389, -0.5240],\n",
      "        [ 0.7469,  1.8342],\n",
      "        [ 0.1995,  1.0060],\n",
      "        [ 0.7161, -0.0089],\n",
      "        [-2.2405, -0.3061],\n",
      "        [-0.5820, -0.0607],\n",
      "        [ 0.1947,  0.4089],\n",
      "        [-0.4646,  0.5088],\n",
      "        [-0.2260, -0.6979],\n",
      "        [ 0.3950, -1.4657]]) tensor([ 3.3100, -0.5506,  1.1639,  5.6708,  0.7600,  3.2509,  3.1950,  1.5539,\n",
      "         6.1189,  9.9881])\n"
     ]
    }
   ],
   "source": [
    "for X, y in data_iter:\n",
    "    print(X, y)\n",
    "    break"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "LinearNet(\n",
      "  (linear): Linear(in_features=2, out_features=1, bias=True)\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "from torch import nn\n",
    "class LinearNet(nn.Module):\n",
    "    def __init__(self, n_feature):\n",
    "        super(LinearNet, self).__init__()\n",
    "        self.linear = nn.Linear(n_feature, 1)\n",
    "    # forward定义前向传播\n",
    "    def forward(self, x):\n",
    "        y = self.linear(x)\n",
    "        return y\n",
    "net = LinearNet(num_inputs)\n",
    "# 打印网络结构\n",
    "print(net)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Sequential(\n",
      "  (linear): Linear(in_features=2, out_features=1, bias=True)\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "net = nn.Sequential()\n",
    "net.add_module('linear', nn.Linear(num_inputs, 1))\n",
    "print(net)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "查看模型的可学习参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Parameter containing:\n",
      "tensor([[-0.1997,  0.2664]], requires_grad=True)\n",
      "Parameter containing:\n",
      "tensor([0.4592], requires_grad=True)\n"
     ]
    }
   ],
   "source": [
    "for param in net.parameters():\n",
    "    print(param)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "初始化模型参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Parameter containing:\n",
       "tensor([0.], requires_grad=True)"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from torch.nn import init\n",
    "init.normal_(net[0].weight, mean=0, std=0.01)\n",
    "init.constant_(net[0].bias, val=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "损失函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [],
   "source": [
    "loss = nn.MSELoss()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "优化器"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "SGD (\n",
      "Parameter Group 0\n",
      "    dampening: 0\n",
      "    lr: 0.03\n",
      "    momentum: 0\n",
      "    nesterov: False\n",
      "    weight_decay: 0\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "import torch.optim as optim\n",
    "optimizer = optim.SGD(net.parameters(), lr=0.03)\n",
    "print(optimizer)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "模型训练"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss: 0.000228\n",
      "epoch 2, loss: 0.000097\n",
      "epoch 3, loss: 0.000180\n"
     ]
    }
   ],
   "source": [
    "num_epochs = 3\n",
    "for epoch in range(1, num_epochs+1):\n",
    "    for X, y in data_iter:\n",
    "        output = net(X)\n",
    "        l = loss(output, y.view(-1, 1))\n",
    "        # 梯度清零\n",
    "        optimizer.zero_grad()\n",
    "        l.backward()\n",
    "        optimizer.step()\n",
    "    print('epoch %d, loss: %f' % (epoch, l.item()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[2, -3.4] Parameter containing:\n",
      "tensor([[ 1.9998, -3.3992]], requires_grad=True)\n",
      "4.2 Parameter containing:\n",
      "tensor([4.1989], requires_grad=True)\n"
     ]
    }
   ],
   "source": [
    "dense = net[0]\n",
    "print(true_w, dense.weight)\n",
    "print(true_b, dense.bias)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.5 图像分类数据集"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "获取数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torchvision\n",
    "import torchvision.transforms as transforms"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "mnist_train = torchvision.datasets.FashionMNIST(root='data/FashionMNIST', train=True, download=True, transform=transforms.ToTensor())\n",
    "mnist_test = torchvision.datasets.FashionMNIST(root='data/FashionMNIST', train=False, download=True, transform=transforms.ToTensor())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(60000, 10000)"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "len(mnist_train), len(mnist_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "feature, label = mnist_train[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(torch.Size([1, 28, 28]), torch.float32)"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "feature.shape, feature.dtype"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(9, int)"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "label, type(label)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_fashion_mnist_labels(labels):\n",
    "    text_labels = ['t-shirt', 'trouser', 'pullover', 'dress', 'coat',\n",
    "                   'sandal', 'shirt', 'sneaker', 'bag', 'ankle boot']\n",
    "    return [text_labels[int(i)] for i in labels]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [],
   "source": [
    "import d2lzh as d2l\n",
    "def show_fashion_mnist(images, labels):\n",
    "    d2l.use_svg_display()\n",
    "    # 这里的_表示我们忽略（不使用）的变量\n",
    "    _, figs = d2l.plt.subplots(1, len(images), figsize=(12, 12))\n",
    "    for f, img, lbl in zip(figs, images, labels):\n",
    "        f.imshow(img.view((28, 28)).numpy())\n",
    "        f.set_title(lbl)\n",
    "        f.axes.get_xaxis().set_visible(False)\n",
    "        f.axes.get_yaxis().set_visible(False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"89.763888pt\" version=\"1.1\" viewBox=\"0 0 687.5 89.763888\" width=\"687.5pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:41:49.422101</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 89.763888 \n",
       "L 687.5 89.763888 \n",
       "L 687.5 -0 \n",
       "L 0 -0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 10.7 79.063888 \n",
       "L 67.445763 79.063888 \n",
       "L 67.445763 22.318125 \n",
       "L 10.7 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p1834650e68)\">\n",
       "    <image height=\"57\" id=\"image64b7e1aae6\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"10.7\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 10.7 79.063888 \n",
       "L 10.7 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 67.445763 79.063888 \n",
       "L 67.445763 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 10.7 79.063888 \n",
       "L 67.445763 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 10.7 22.318125 \n",
       "L 67.445763 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_1\">\n",
       "    <!-- ankle boot -->\n",
       "    <g transform=\"translate(7.349756 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "      <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      <path d=\"M 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 31.109375 \n",
       "L 44.921875 54.6875 \n",
       "L 56.390625 54.6875 \n",
       "L 27.390625 29.109375 \n",
       "L 57.625 0 \n",
       "L 45.90625 0 \n",
       "L 18.109375 26.703125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-107\"/>\n",
       "      <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "      <path id=\"DejaVuSans-32\"/>\n",
       "      <path d=\"M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "M 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "z\n",
       "\" id=\"DejaVuSans-98\"/>\n",
       "      <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "      <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"61.279297\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     <use x=\"124.658203\" xlink:href=\"#DejaVuSans-107\"/>\n",
       "     <use x=\"182.568359\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"210.351562\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"271.875\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "     <use x=\"303.662109\" xlink:href=\"#DejaVuSans-98\"/>\n",
       "     <use x=\"367.138672\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"428.320312\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"489.501953\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_2\">\n",
       "   <g id=\"patch_7\">\n",
       "    <path d=\"M 78.794915 79.063888 \n",
       "L 135.540678 79.063888 \n",
       "L 135.540678 22.318125 \n",
       "L 78.794915 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p51c0566d01)\">\n",
       "    <image height=\"57\" id=\"imagece4e717d3f\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"78.794915\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_8\">\n",
       "    <path d=\"M 78.794915 79.063888 \n",
       "L 78.794915 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_9\">\n",
       "    <path d=\"M 135.540678 79.063888 \n",
       "L 135.540678 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_10\">\n",
       "    <path d=\"M 78.794915 79.063888 \n",
       "L 135.540678 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_11\">\n",
       "    <path d=\"M 78.794915 22.318125 \n",
       "L 135.540678 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_2\">\n",
       "    <!-- t-shirt -->\n",
       "    <g transform=\"translate(89.237172 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 4.890625 31.390625 \n",
       "L 31.203125 31.390625 \n",
       "L 31.203125 23.390625 \n",
       "L 4.890625 23.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-45\"/>\n",
       "      <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "      <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "      <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-45\"/>\n",
       "     <use x=\"75.292969\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"127.392578\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "     <use x=\"190.771484\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "     <use x=\"218.554688\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"259.667969\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_3\">\n",
       "   <g id=\"patch_12\">\n",
       "    <path d=\"M 146.889831 79.063888 \n",
       "L 203.635593 79.063888 \n",
       "L 203.635593 22.318125 \n",
       "L 146.889831 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pde63fc62b6)\">\n",
       "    <image height=\"57\" id=\"imagede3ee603a6\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"146.889831\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_13\">\n",
       "    <path d=\"M 146.889831 79.063888 \n",
       "L 146.889831 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_14\">\n",
       "    <path d=\"M 203.635593 79.063888 \n",
       "L 203.635593 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_15\">\n",
       "    <path d=\"M 146.889831 79.063888 \n",
       "L 203.635593 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_16\">\n",
       "    <path d=\"M 146.889831 22.318125 \n",
       "L 203.635593 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_3\">\n",
       "    <!-- t-shirt -->\n",
       "    <g transform=\"translate(157.332087 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-45\"/>\n",
       "     <use x=\"75.292969\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"127.392578\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "     <use x=\"190.771484\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "     <use x=\"218.554688\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"259.667969\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_4\">\n",
       "   <g id=\"patch_17\">\n",
       "    <path d=\"M 214.984746 79.063888 \n",
       "L 271.730508 79.063888 \n",
       "L 271.730508 22.318125 \n",
       "L 214.984746 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pd5cbabe075)\">\n",
       "    <image height=\"57\" id=\"imageddcc3b06f1\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"214.984746\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_18\">\n",
       "    <path d=\"M 214.984746 79.063888 \n",
       "L 214.984746 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_19\">\n",
       "    <path d=\"M 271.730508 79.063888 \n",
       "L 271.730508 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_20\">\n",
       "    <path d=\"M 214.984746 79.063888 \n",
       "L 271.730508 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_21\">\n",
       "    <path d=\"M 214.984746 22.318125 \n",
       "L 271.730508 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_4\">\n",
       "    <!-- dress -->\n",
       "    <g transform=\"translate(227.273877 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 45.40625 46.390625 \n",
       "L 45.40625 75.984375 \n",
       "L 54.390625 75.984375 \n",
       "L 54.390625 0 \n",
       "L 45.40625 0 \n",
       "L 45.40625 8.203125 \n",
       "Q 42.578125 3.328125 38.25 0.953125 \n",
       "Q 33.9375 -1.421875 27.875 -1.421875 \n",
       "Q 17.96875 -1.421875 11.734375 6.484375 \n",
       "Q 5.515625 14.40625 5.515625 27.296875 \n",
       "Q 5.515625 40.1875 11.734375 48.09375 \n",
       "Q 17.96875 56 27.875 56 \n",
       "Q 33.9375 56 38.25 53.625 \n",
       "Q 42.578125 51.265625 45.40625 46.390625 \n",
       "z\n",
       "M 14.796875 27.296875 \n",
       "Q 14.796875 17.390625 18.875 11.75 \n",
       "Q 22.953125 6.109375 30.078125 6.109375 \n",
       "Q 37.203125 6.109375 41.296875 11.75 \n",
       "Q 45.40625 17.390625 45.40625 27.296875 \n",
       "Q 45.40625 37.203125 41.296875 42.84375 \n",
       "Q 37.203125 48.484375 30.078125 48.484375 \n",
       "Q 22.953125 48.484375 18.875 42.84375 \n",
       "Q 14.796875 37.203125 14.796875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-100\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-100\"/>\n",
       "     <use x=\"63.476562\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"102.339844\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"163.863281\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"215.962891\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_5\">\n",
       "   <g id=\"patch_22\">\n",
       "    <path d=\"M 283.079661 79.063888 \n",
       "L 339.825424 79.063888 \n",
       "L 339.825424 22.318125 \n",
       "L 283.079661 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p3a982abbc9)\">\n",
       "    <image height=\"57\" id=\"image2daedfee28\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"283.079661\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_23\">\n",
       "    <path d=\"M 283.079661 79.063888 \n",
       "L 283.079661 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_24\">\n",
       "    <path d=\"M 339.825424 79.063888 \n",
       "L 339.825424 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_25\">\n",
       "    <path d=\"M 283.079661 79.063888 \n",
       "L 339.825424 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_26\">\n",
       "    <path d=\"M 283.079661 22.318125 \n",
       "L 339.825424 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_5\">\n",
       "    <!-- t-shirt -->\n",
       "    <g transform=\"translate(293.521917 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-45\"/>\n",
       "     <use x=\"75.292969\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"127.392578\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "     <use x=\"190.771484\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "     <use x=\"218.554688\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"259.667969\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_6\">\n",
       "   <g id=\"patch_27\">\n",
       "    <path d=\"M 351.174576 79.063888 \n",
       "L 407.920339 79.063888 \n",
       "L 407.920339 22.318125 \n",
       "L 351.174576 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p15d0b44dd1)\">\n",
       "    <image height=\"57\" id=\"imaged6b10643e8\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"351.174576\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_28\">\n",
       "    <path d=\"M 351.174576 79.063888 \n",
       "L 351.174576 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_29\">\n",
       "    <path d=\"M 407.920339 79.063888 \n",
       "L 407.920339 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_30\">\n",
       "    <path d=\"M 351.174576 79.063888 \n",
       "L 407.920339 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_31\">\n",
       "    <path d=\"M 351.174576 22.318125 \n",
       "L 407.920339 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_6\">\n",
       "    <!-- pullover -->\n",
       "    <g transform=\"translate(355.221208 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "      <path d=\"M 8.5 21.578125 \n",
       "L 8.5 54.6875 \n",
       "L 17.484375 54.6875 \n",
       "L 17.484375 21.921875 \n",
       "Q 17.484375 14.15625 20.5 10.265625 \n",
       "Q 23.53125 6.390625 29.59375 6.390625 \n",
       "Q 36.859375 6.390625 41.078125 11.03125 \n",
       "Q 45.3125 15.671875 45.3125 23.6875 \n",
       "L 45.3125 54.6875 \n",
       "L 54.296875 54.6875 \n",
       "L 54.296875 0 \n",
       "L 45.3125 0 \n",
       "L 45.3125 8.40625 \n",
       "Q 42.046875 3.421875 37.71875 1 \n",
       "Q 33.40625 -1.421875 27.6875 -1.421875 \n",
       "Q 18.265625 -1.421875 13.375 4.4375 \n",
       "Q 8.5 10.296875 8.5 21.578125 \n",
       "z\n",
       "M 31.109375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-117\"/>\n",
       "      <path d=\"M 2.984375 54.6875 \n",
       "L 12.5 54.6875 \n",
       "L 29.59375 8.796875 \n",
       "L 46.6875 54.6875 \n",
       "L 56.203125 54.6875 \n",
       "L 35.6875 0 \n",
       "L 23.484375 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-118\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-112\"/>\n",
       "     <use x=\"63.476562\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"126.855469\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"154.638672\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"182.421875\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"243.603516\" xlink:href=\"#DejaVuSans-118\"/>\n",
       "     <use x=\"302.783203\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"364.306641\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_7\">\n",
       "   <g id=\"patch_32\">\n",
       "    <path d=\"M 419.269492 79.063888 \n",
       "L 476.015254 79.063888 \n",
       "L 476.015254 22.318125 \n",
       "L 419.269492 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p6cee8c3e27)\">\n",
       "    <image height=\"57\" id=\"imagea8066f7a7c\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"419.269492\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_33\">\n",
       "    <path d=\"M 419.269492 79.063888 \n",
       "L 419.269492 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_34\">\n",
       "    <path d=\"M 476.015254 79.063888 \n",
       "L 476.015254 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_35\">\n",
       "    <path d=\"M 419.269492 79.063888 \n",
       "L 476.015254 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_36\">\n",
       "    <path d=\"M 419.269492 22.318125 \n",
       "L 476.015254 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_7\">\n",
       "    <!-- sneaker -->\n",
       "    <g transform=\"translate(423.930185 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"177.001953\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"238.28125\" xlink:href=\"#DejaVuSans-107\"/>\n",
       "     <use x=\"292.566406\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"354.089844\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_8\">\n",
       "   <g id=\"patch_37\">\n",
       "    <path d=\"M 487.364407 79.063888 \n",
       "L 544.110169 79.063888 \n",
       "L 544.110169 22.318125 \n",
       "L 487.364407 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p32d4d970db)\">\n",
       "    <image height=\"57\" id=\"image8bd05b0f52\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"487.364407\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_38\">\n",
       "    <path d=\"M 487.364407 79.063888 \n",
       "L 487.364407 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_39\">\n",
       "    <path d=\"M 544.110169 79.063888 \n",
       "L 544.110169 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_40\">\n",
       "    <path d=\"M 487.364407 79.063888 \n",
       "L 544.110169 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_41\">\n",
       "    <path d=\"M 487.364407 22.318125 \n",
       "L 544.110169 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_8\">\n",
       "    <!-- pullover -->\n",
       "    <g transform=\"translate(491.411038 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-112\"/>\n",
       "     <use x=\"63.476562\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"126.855469\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"154.638672\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"182.421875\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"243.603516\" xlink:href=\"#DejaVuSans-118\"/>\n",
       "     <use x=\"302.783203\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"364.306641\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_9\">\n",
       "   <g id=\"patch_42\">\n",
       "    <path d=\"M 555.459322 79.063888 \n",
       "L 612.205085 79.063888 \n",
       "L 612.205085 22.318125 \n",
       "L 555.459322 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p08ae9a5e63)\">\n",
       "    <image height=\"57\" id=\"imageff5c43b498\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"555.459322\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_43\">\n",
       "    <path d=\"M 555.459322 79.063888 \n",
       "L 555.459322 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_44\">\n",
       "    <path d=\"M 612.205085 79.063888 \n",
       "L 612.205085 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_45\">\n",
       "    <path d=\"M 555.459322 79.063888 \n",
       "L 612.205085 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_46\">\n",
       "    <path d=\"M 555.459322 22.318125 \n",
       "L 612.205085 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_9\">\n",
       "    <!-- sandal -->\n",
       "    <g transform=\"translate(564.074391 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"113.378906\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     <use x=\"176.757812\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "     <use x=\"240.234375\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"301.513672\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_10\">\n",
       "   <g id=\"patch_47\">\n",
       "    <path d=\"M 623.554237 79.063888 \n",
       "L 680.3 79.063888 \n",
       "L 680.3 22.318125 \n",
       "L 623.554237 22.318125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p122df2cc89)\">\n",
       "    <image height=\"57\" id=\"image46b0e8dff6\" transform=\"scale(1 -1)translate(0 -57)\" width=\"57\" x=\"623.554237\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-22.063888\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_48\">\n",
       "    <path d=\"M 623.554237 79.063888 \n",
       "L 623.554237 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_49\">\n",
       "    <path d=\"M 680.3 79.063888 \n",
       "L 680.3 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_50\">\n",
       "    <path d=\"M 623.554237 79.063888 \n",
       "L 680.3 79.063888 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_51\">\n",
       "    <path d=\"M 623.554237 22.318125 \n",
       "L 680.3 22.318125 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_10\">\n",
       "    <!-- sandal -->\n",
       "    <g transform=\"translate(632.169306 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"113.378906\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     <use x=\"176.757812\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "     <use x=\"240.234375\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"301.513672\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p1834650e68\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"10.7\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p51c0566d01\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"78.794915\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pde63fc62b6\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"146.889831\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pd5cbabe075\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"214.984746\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p3a982abbc9\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"283.079661\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p15d0b44dd1\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"351.174576\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p6cee8c3e27\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"419.269492\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p32d4d970db\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"487.364407\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p08ae9a5e63\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"555.459322\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p122df2cc89\">\n",
       "   <rect height=\"56.745763\" width=\"56.745763\" x=\"623.554237\" y=\"22.318125\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 864x864 with 10 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = [], []\n",
    "for i in range(10):\n",
    "    X.append(mnist_train[i][0])\n",
    "    y.append(mnist_train[i][1])\n",
    "show_fashion_mnist(X, get_fashion_mnist_labels(y))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "读取小批量"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [],
   "source": [
    "import sys\n",
    "batch_size = 256\n",
    "if sys.platform.startswith('win'):\n",
    "    # 0表示不用额外的进程来加速读取数据\n",
    "    num_workers = 0\n",
    "else: \n",
    "    num_workers = 4\n",
    "train_iter = torch.utils.data.DataLoader(mnist_train, batch_size=batch_size, shuffle=True, num_workers=num_workers)\n",
    "test_iter = torch.utils.data.DataLoader(mnist_test, batch_size=batch_size, shuffle=False, num_workers=num_workers)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "3.22 sec\n"
     ]
    }
   ],
   "source": [
    "start = time()\n",
    "for X, y in train_iter:\n",
    "    continue\n",
    "print('%.2f sec' % (time() - start))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.6 softmax回归的从零开始实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [],
   "source": [
    "import d2lzh as d2l"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "读取数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [],
   "source": [
    "batch_size = 256\n",
    "train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "初始化模型参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_inputs = 784\n",
    "num_outputs = 10\n",
    "W = torch.tensor(np.random.normal(0, 0.01, (num_inputs, num_outputs)), dtype=torch.float32)\n",
    "b = torch.zeros(num_outputs, dtype=torch.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.], requires_grad=True)"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "W.requires_grad_(requires_grad=True)\n",
    "b.requires_grad_(requires_grad=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "张量按行、按列求和"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[5, 7, 9]])\n",
      "tensor([[ 6],\n",
      "        [15]])\n"
     ]
    }
   ],
   "source": [
    "X = torch.tensor([[1, 2, 3], [4, 5, 6]])\n",
    "print(X.sum(dim=0, keepdim=True))\n",
    "print(X.sum(dim=1, keepdim=True))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "softmax运算"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [],
   "source": [
    "def softmax(X):\n",
    "    X_exp = torch.exp(X)\n",
    "    partition = X_exp.sum(dim=1, keepdim=True)\n",
    "    # 这里应用了广播机制\n",
    "    return X_exp / partition"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(tensor([[0.0983, 0.4965, 0.1170, 0.2383, 0.0498],\n",
       "         [0.0446, 0.2138, 0.0424, 0.1218, 0.5774]]),\n",
       " tensor([1.0000, 1.0000]))"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X = torch.tensor(np.random.normal(0, 1, (2, 5)), dtype=torch.float32)\n",
    "X_prob = softmax(X)\n",
    "X_prob, X_prob.sum(dim=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [],
   "source": [
    "def net(X):\n",
    "    return softmax(torch.mm(X.view((-1, num_inputs)), W) + b)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义损失函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[0.1000],\n",
       "        [0.5000]])"
      ]
     },
     "execution_count": 50,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_hat = torch.tensor([[0.1, 0.3, 0.6], [0.3, 0.2, 0.5]])\n",
    "y = torch.LongTensor([0, 2])\n",
    "torch.gather(input=y_hat, dim=1, index=y.view(-1, 1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "metadata": {},
   "outputs": [],
   "source": [
    "def cross_entropy(y_hat, y):\n",
    "    return -torch.log(y_hat.gather(1, y.view(-1, 1)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "计算分类准确率"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [],
   "source": [
    "def accuracy(y_hat, y):\n",
    "    return (y_hat.argmax(dim=1) == y).float().mean().item()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.5"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "accuracy(y_hat, y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [],
   "source": [
    "def evaluate_accuracy(data_iter, net):\n",
    "    acc_sum, n = 0.0, 0\n",
    "    for X, y in data_iter:\n",
    "        acc_sum += (net(X).argmax(dim=1) == y).float().sum().item()\n",
    "        n += y.shape[0]\n",
    "    return acc_sum / n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.1267\n"
     ]
    }
   ],
   "source": [
    "print(evaluate_accuracy(test_iter, net))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss 0.7847, train acc 0.749, test acc 0.791\n",
      "epoch 2, loss 0.5703, train acc 0.814, test acc 0.814\n",
      "epoch 3, loss 0.5254, train acc 0.825, test acc 0.819\n",
      "epoch 4, loss 0.5018, train acc 0.832, test acc 0.824\n",
      "epoch 5, loss 0.4851, train acc 0.837, test acc 0.829\n"
     ]
    }
   ],
   "source": [
    "num_epochs, lr = 5, 0.1\n",
    "def train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size, params=None, lr=None, optimizer=None):\n",
    "    for epoch in range(num_epochs):\n",
    "        train_l_sum, train_acc_sum, n = 0.0, 0.0, 0\n",
    "        for X, y in train_iter:\n",
    "            y_hat = net(X)\n",
    "            l = loss(y_hat, y).sum()\n",
    "            \n",
    "            # 梯度清零\n",
    "            if optimizer is not None:\n",
    "                optimizer.zero_grad()\n",
    "            elif params is not None and params[0].grad is not None:\n",
    "                for param in params:\n",
    "                    param.grad.data.zero_()\n",
    "            \n",
    "            l.backward()\n",
    "            if optimizer is None:\n",
    "                d2l.sgd(params, lr, batch_size)\n",
    "            else:\n",
    "                optimizer.step()\n",
    "            \n",
    "            train_l_sum += l.item()\n",
    "            train_acc_sum += (y_hat.argmax(dim=1) == y).sum().item()\n",
    "            n += y.shape[0]\n",
    "        test_acc = evaluate_accuracy(test_iter, net)\n",
    "        print('epoch %d, loss %.4f, train acc %.3f, test acc %.3f' % (epoch+1, train_l_sum/n, train_acc_sum/n, test_acc))\n",
    "train_ch3(net, train_iter, test_iter, cross_entropy, num_epochs, batch_size, [W, b], lr)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "预测"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"109.625311pt\" version=\"1.1\" viewBox=\"0 0 687.5 109.625311\" width=\"687.5pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:43:12.934762</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 109.625311 \n",
       "L 687.5 109.625311 \n",
       "L 687.5 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 10.7 98.925311 \n",
       "L 73.869811 98.925311 \n",
       "L 73.869811 35.7555 \n",
       "L 10.7 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p27d02af395)\">\n",
       "    <image height=\"64\" id=\"image95af99ed52\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"10.7\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 10.7 98.925311 \n",
       "L 10.7 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 73.869811 98.925311 \n",
       "L 73.869811 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 10.7 98.925311 \n",
       "L 73.869811 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 10.7 35.7555 \n",
       "L 73.869811 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_1\">\n",
       "    <!-- ankle boot -->\n",
       "    <g transform=\"translate(10.561781 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "      <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      <path d=\"M 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 31.109375 \n",
       "L 44.921875 54.6875 \n",
       "L 56.390625 54.6875 \n",
       "L 27.390625 29.109375 \n",
       "L 57.625 0 \n",
       "L 45.90625 0 \n",
       "L 18.109375 26.703125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-107\"/>\n",
       "      <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "      <path id=\"DejaVuSans-32\"/>\n",
       "      <path d=\"M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "M 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "z\n",
       "\" id=\"DejaVuSans-98\"/>\n",
       "      <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "      <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"61.279297\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     <use x=\"124.658203\" xlink:href=\"#DejaVuSans-107\"/>\n",
       "     <use x=\"182.568359\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"210.351562\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"271.875\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "     <use x=\"303.662109\" xlink:href=\"#DejaVuSans-98\"/>\n",
       "     <use x=\"367.138672\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"428.320312\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"489.501953\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "    <!-- ankle boot -->\n",
       "    <g transform=\"translate(10.561781 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"61.279297\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     <use x=\"124.658203\" xlink:href=\"#DejaVuSans-107\"/>\n",
       "     <use x=\"182.568359\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"210.351562\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"271.875\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "     <use x=\"303.662109\" xlink:href=\"#DejaVuSans-98\"/>\n",
       "     <use x=\"367.138672\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"428.320312\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"489.501953\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_2\">\n",
       "   <g id=\"patch_7\">\n",
       "    <path d=\"M 86.503774 98.925311 \n",
       "L 149.673585 98.925311 \n",
       "L 149.673585 35.7555 \n",
       "L 86.503774 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pbbfbdc435b)\">\n",
       "    <image height=\"64\" id=\"image6e5201fcba\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"86.503774\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_8\">\n",
       "    <path d=\"M 86.503774 98.925311 \n",
       "L 86.503774 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_9\">\n",
       "    <path d=\"M 149.673585 98.925311 \n",
       "L 149.673585 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_10\">\n",
       "    <path d=\"M 86.503774 98.925311 \n",
       "L 149.673585 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_11\">\n",
       "    <path d=\"M 86.503774 35.7555 \n",
       "L 149.673585 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_2\">\n",
       "    <!-- pullover -->\n",
       "    <g transform=\"translate(93.762429 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "      <path d=\"M 8.5 21.578125 \n",
       "L 8.5 54.6875 \n",
       "L 17.484375 54.6875 \n",
       "L 17.484375 21.921875 \n",
       "Q 17.484375 14.15625 20.5 10.265625 \n",
       "Q 23.53125 6.390625 29.59375 6.390625 \n",
       "Q 36.859375 6.390625 41.078125 11.03125 \n",
       "Q 45.3125 15.671875 45.3125 23.6875 \n",
       "L 45.3125 54.6875 \n",
       "L 54.296875 54.6875 \n",
       "L 54.296875 0 \n",
       "L 45.3125 0 \n",
       "L 45.3125 8.40625 \n",
       "Q 42.046875 3.421875 37.71875 1 \n",
       "Q 33.40625 -1.421875 27.6875 -1.421875 \n",
       "Q 18.265625 -1.421875 13.375 4.4375 \n",
       "Q 8.5 10.296875 8.5 21.578125 \n",
       "z\n",
       "M 31.109375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-117\"/>\n",
       "      <path d=\"M 2.984375 54.6875 \n",
       "L 12.5 54.6875 \n",
       "L 29.59375 8.796875 \n",
       "L 46.6875 54.6875 \n",
       "L 56.203125 54.6875 \n",
       "L 35.6875 0 \n",
       "L 23.484375 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-118\"/>\n",
       "      <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-112\"/>\n",
       "     <use x=\"63.476562\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"126.855469\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"154.638672\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"182.421875\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"243.603516\" xlink:href=\"#DejaVuSans-118\"/>\n",
       "     <use x=\"302.783203\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"364.306641\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "    <!-- pullover -->\n",
       "    <g transform=\"translate(93.762429 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-112\"/>\n",
       "     <use x=\"63.476562\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"126.855469\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"154.638672\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "     <use x=\"182.421875\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"243.603516\" xlink:href=\"#DejaVuSans-118\"/>\n",
       "     <use x=\"302.783203\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"364.306641\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_3\">\n",
       "   <g id=\"patch_12\">\n",
       "    <path d=\"M 162.307547 98.925311 \n",
       "L 225.477358 98.925311 \n",
       "L 225.477358 35.7555 \n",
       "L 162.307547 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pd6c7bc75e7)\">\n",
       "    <image height=\"64\" id=\"image6ac47a087a\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"162.307547\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_13\">\n",
       "    <path d=\"M 162.307547 98.925311 \n",
       "L 162.307547 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_14\">\n",
       "    <path d=\"M 225.477358 98.925311 \n",
       "L 225.477358 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_15\">\n",
       "    <path d=\"M 162.307547 98.925311 \n",
       "L 225.477358 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_16\">\n",
       "    <path d=\"M 162.307547 35.7555 \n",
       "L 225.477358 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_3\">\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(172.45089 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"78.072266\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"139.253906\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"202.632812\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"254.732422\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"316.255859\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(172.45089 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"78.072266\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"139.253906\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"202.632812\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"254.732422\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"316.255859\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_4\">\n",
       "   <g id=\"patch_17\">\n",
       "    <path d=\"M 238.111321 98.925311 \n",
       "L 301.281132 98.925311 \n",
       "L 301.281132 35.7555 \n",
       "L 238.111321 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p1804fa277f)\">\n",
       "    <image height=\"64\" id=\"image841a782afe\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"238.111321\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_18\">\n",
       "    <path d=\"M 238.111321 98.925311 \n",
       "L 238.111321 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_19\">\n",
       "    <path d=\"M 301.281132 98.925311 \n",
       "L 301.281132 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_20\">\n",
       "    <path d=\"M 238.111321 98.925311 \n",
       "L 301.281132 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_21\">\n",
       "    <path d=\"M 238.111321 35.7555 \n",
       "L 301.281132 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_4\">\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(248.254664 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"78.072266\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"139.253906\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"202.632812\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"254.732422\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"316.255859\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(248.254664 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"78.072266\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"139.253906\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"202.632812\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"254.732422\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"316.255859\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_5\">\n",
       "   <g id=\"patch_22\">\n",
       "    <path d=\"M 313.915094 98.925311 \n",
       "L 377.084906 98.925311 \n",
       "L 377.084906 35.7555 \n",
       "L 313.915094 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pe5d9847d4e)\">\n",
       "    <image height=\"64\" id=\"image950f50211a\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"313.915094\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_23\">\n",
       "    <path d=\"M 313.915094 98.925311 \n",
       "L 313.915094 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_24\">\n",
       "    <path d=\"M 377.084906 98.925311 \n",
       "L 377.084906 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_25\">\n",
       "    <path d=\"M 313.915094 98.925311 \n",
       "L 377.084906 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_26\">\n",
       "    <path d=\"M 313.915094 35.7555 \n",
       "L 377.084906 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_5\">\n",
       "    <!-- shirt -->\n",
       "    <g transform=\"translate(332.08625 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "      <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "     <use x=\"143.261719\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"184.375\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "    <!-- shirt -->\n",
       "    <g transform=\"translate(332.08625 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "     <use x=\"143.261719\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"184.375\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_6\">\n",
       "   <g id=\"patch_27\">\n",
       "    <path d=\"M 389.718868 98.925311 \n",
       "L 452.888679 98.925311 \n",
       "L 452.888679 35.7555 \n",
       "L 389.718868 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pdefc1b5491)\">\n",
       "    <image height=\"64\" id=\"image7ca9f7f90d\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"389.718868\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_28\">\n",
       "    <path d=\"M 389.718868 98.925311 \n",
       "L 389.718868 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_29\">\n",
       "    <path d=\"M 452.888679 98.925311 \n",
       "L 452.888679 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_30\">\n",
       "    <path d=\"M 389.718868 98.925311 \n",
       "L 452.888679 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_31\">\n",
       "    <path d=\"M 389.718868 35.7555 \n",
       "L 452.888679 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_6\">\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(399.862211 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"78.072266\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"139.253906\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"202.632812\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"254.732422\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"316.255859\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "    <!-- trouser -->\n",
       "    <g transform=\"translate(399.862211 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "     <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"78.072266\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"139.253906\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "     <use x=\"202.632812\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"254.732422\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     <use x=\"316.255859\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_7\">\n",
       "   <g id=\"patch_32\">\n",
       "    <path d=\"M 465.522642 98.925311 \n",
       "L 528.692453 98.925311 \n",
       "L 528.692453 35.7555 \n",
       "L 465.522642 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p5764f1d517)\">\n",
       "    <image height=\"64\" id=\"image5c29f75954\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"465.522642\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_33\">\n",
       "    <path d=\"M 465.522642 98.925311 \n",
       "L 465.522642 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_34\">\n",
       "    <path d=\"M 528.692453 98.925311 \n",
       "L 528.692453 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_35\">\n",
       "    <path d=\"M 465.522642 98.925311 \n",
       "L 528.692453 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_36\">\n",
       "    <path d=\"M 465.522642 35.7555 \n",
       "L 528.692453 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_7\">\n",
       "    <!-- coat -->\n",
       "    <g transform=\"translate(484.108172 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-99\"/>\n",
       "     <use x=\"54.980469\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"116.162109\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"177.441406\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "    <!-- coat -->\n",
       "    <g transform=\"translate(484.108172 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-99\"/>\n",
       "     <use x=\"54.980469\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "     <use x=\"116.162109\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"177.441406\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_8\">\n",
       "   <g id=\"patch_37\">\n",
       "    <path d=\"M 541.326415 98.925311 \n",
       "L 604.496226 98.925311 \n",
       "L 604.496226 35.7555 \n",
       "L 541.326415 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p5aaa325509)\">\n",
       "    <image height=\"64\" id=\"image7c1733a84b\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"541.326415\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_38\">\n",
       "    <path d=\"M 541.326415 98.925311 \n",
       "L 541.326415 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_39\">\n",
       "    <path d=\"M 604.496226 98.925311 \n",
       "L 604.496226 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_40\">\n",
       "    <path d=\"M 541.326415 98.925311 \n",
       "L 604.496226 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_41\">\n",
       "    <path d=\"M 541.326415 35.7555 \n",
       "L 604.496226 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_8\">\n",
       "    <!-- shirt -->\n",
       "    <g transform=\"translate(559.497571 16.318125)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "     <use x=\"143.261719\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"184.375\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "    <!-- shirt -->\n",
       "    <g transform=\"translate(559.497571 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "     <use x=\"115.478516\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "     <use x=\"143.261719\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "     <use x=\"184.375\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_9\">\n",
       "   <g id=\"patch_42\">\n",
       "    <path d=\"M 617.130189 98.925311 \n",
       "L 680.3 98.925311 \n",
       "L 680.3 35.7555 \n",
       "L 617.130189 35.7555 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p18400274ab)\">\n",
       "    <image height=\"64\" id=\"imagef73c7df503\" transform=\"scale(1 -1)translate(0 -64)\" width=\"64\" x=\"617.130189\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"-34.925311\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_43\">\n",
       "    <path d=\"M 617.130189 98.925311 \n",
       "L 617.130189 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_44\">\n",
       "    <path d=\"M 680.3 98.925311 \n",
       "L 680.3 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_45\">\n",
       "    <path d=\"M 617.130189 98.925311 \n",
       "L 680.3 98.925311 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_46\">\n",
       "    <path d=\"M 617.130189 35.7555 \n",
       "L 680.3 35.7555 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"text_9\">\n",
       "    <!-- sandal -->\n",
       "    <g transform=\"translate(628.957282 16.318125)scale(0.12 -0.12)\">\n",
       "     <defs>\n",
       "      <path d=\"M 45.40625 46.390625 \n",
       "L 45.40625 75.984375 \n",
       "L 54.390625 75.984375 \n",
       "L 54.390625 0 \n",
       "L 45.40625 0 \n",
       "L 45.40625 8.203125 \n",
       "Q 42.578125 3.328125 38.25 0.953125 \n",
       "Q 33.9375 -1.421875 27.875 -1.421875 \n",
       "Q 17.96875 -1.421875 11.734375 6.484375 \n",
       "Q 5.515625 14.40625 5.515625 27.296875 \n",
       "Q 5.515625 40.1875 11.734375 48.09375 \n",
       "Q 17.96875 56 27.875 56 \n",
       "Q 33.9375 56 38.25 53.625 \n",
       "Q 42.578125 51.265625 45.40625 46.390625 \n",
       "z\n",
       "M 14.796875 27.296875 \n",
       "Q 14.796875 17.390625 18.875 11.75 \n",
       "Q 22.953125 6.109375 30.078125 6.109375 \n",
       "Q 37.203125 6.109375 41.296875 11.75 \n",
       "Q 45.40625 17.390625 45.40625 27.296875 \n",
       "Q 45.40625 37.203125 41.296875 42.84375 \n",
       "Q 37.203125 48.484375 30.078125 48.484375 \n",
       "Q 22.953125 48.484375 18.875 42.84375 \n",
       "Q 14.796875 37.203125 14.796875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-100\"/>\n",
       "     </defs>\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"113.378906\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     <use x=\"176.757812\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "     <use x=\"240.234375\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"301.513672\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "    </g>\n",
       "    <!-- sandal -->\n",
       "    <g transform=\"translate(628.957282 29.7555)scale(0.12 -0.12)\">\n",
       "     <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "     <use x=\"52.099609\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"113.378906\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     <use x=\"176.757812\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "     <use x=\"240.234375\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "     <use x=\"301.513672\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p27d02af395\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"10.7\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pbbfbdc435b\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"86.503774\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pd6c7bc75e7\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"162.307547\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p1804fa277f\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"238.111321\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pe5d9847d4e\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"313.915094\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pdefc1b5491\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"389.718868\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p5764f1d517\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"465.522642\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p5aaa325509\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"541.326415\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p18400274ab\">\n",
       "   <rect height=\"63.169811\" width=\"63.169811\" x=\"617.130189\" y=\"35.7555\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 864x864 with 9 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = iter(test_iter).next()\n",
    "true_labels = d2l.get_fashion_mnist_labels(y.numpy())\n",
    "pred_labels = d2l.get_fashion_mnist_labels(net(X).argmax(dim=1).numpy())\n",
    "titles = [true + '\\n' + pred for true, pred in zip(true_labels, pred_labels)]\n",
    "d2l.show_fashion_mnist(X[:9], titles[:9])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.7 softmax回归的简洁实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "from torch import nn\n",
    "from torch.nn import init\n",
    "import d2lzh as d2l"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "读取数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [],
   "source": [
    "batch_size = 256\n",
    "train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义和初始化模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_inputs = 784\n",
    "num_outputs = 10\n",
    "class LinearNet(nn.Module):\n",
    "    def __init__(self, num_inputs, num_outputs):\n",
    "        super(LinearNet, self).__init__()\n",
    "        self.linear = nn.Linear(num_inputs, num_outputs)\n",
    "    # x shape: (batch, 1, 28, 28)\n",
    "    def forward(self, x):\n",
    "        y = self.linear(x.view(x.shape[0], -1))\n",
    "        return y\n",
    "net = LinearNet(num_inputs, num_outputs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [],
   "source": [
    "class FlattenLayer(nn.Module):\n",
    "    def __init__(self):\n",
    "        super(FlattenLayer, self).__init__()\n",
    "    # x shape: (batch, *, *, ...)\n",
    "    def forward(self, x):\n",
    "        return x.view(x.shape[0], -1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [],
   "source": [
    "from collections import OrderedDict\n",
    "net = nn.Sequential(\n",
    "    OrderedDict([\n",
    "        ('flatten', FlattenLayer()), \n",
    "        ('linear', nn.Linear(num_inputs, num_outputs))\n",
    "    ])\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Parameter containing:\n",
       "tensor([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.], requires_grad=True)"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "init.normal_(net.linear.weight, mean=0, std=0.01)\n",
    "init.constant_(net.linear.bias, val=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "损失函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {},
   "outputs": [],
   "source": [
    "loss = nn.CrossEntropyLoss()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "优化算法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [],
   "source": [
    "optimizer = torch.optim.SGD(net.parameters(), lr=0.1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss 0.0031, train acc 0.751, test acc 0.786\n",
      "epoch 2, loss 0.0022, train acc 0.814, test acc 0.780\n",
      "epoch 3, loss 0.0021, train acc 0.826, test acc 0.813\n",
      "epoch 4, loss 0.0020, train acc 0.833, test acc 0.812\n",
      "epoch 5, loss 0.0019, train acc 0.836, test acc 0.821\n"
     ]
    }
   ],
   "source": [
    "num_epochs = 5\n",
    "d2l.train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size, None, None, optimizer)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.8 多层感知机"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {},
   "outputs": [],
   "source": [
    "def xyplot(x_vals, y_vals, name):\n",
    "    d2l.set_figsize(figsize=(5, 2.5))\n",
    "    d2l.plt.plot(x_vals.detach().numpy(), y_vals.detach().numpy())\n",
    "    d2l.plt.xlabel('x')\n",
    "    d2l.plt.ylabel(name+'(x)')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "ReLU"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 320.440625 180.65625\" width=\"320.440625pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:44:29.033231</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 320.440625 180.65625 \n",
       "L 320.440625 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 34.240625 143.1 \n",
       "L 313.240625 143.1 \n",
       "L 313.240625 7.2 \n",
       "L 34.240625 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m8dca463b3e\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"46.922443\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- −8 -->\n",
       "      <g transform=\"translate(39.551349 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"78.826388\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- −6 -->\n",
       "      <g transform=\"translate(71.455294 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"110.730333\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- −4 -->\n",
       "      <g transform=\"translate(103.359239 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"142.634278\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- −2 -->\n",
       "      <g transform=\"translate(135.263184 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"174.538223\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(171.356973 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"206.442168\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(203.260918 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_7\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"238.346113\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(235.164863 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_8\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"270.250058\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(267.068808 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_9\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"302.154003\" xlink:href=\"#m8dca463b3e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(298.972753 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_10\">\n",
       "     <!-- x -->\n",
       "     <g transform=\"translate(170.78125 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 54.890625 54.6875 \n",
       "L 35.109375 28.078125 \n",
       "L 55.90625 0 \n",
       "L 45.3125 0 \n",
       "L 29.390625 21.484375 \n",
       "L 13.484375 0 \n",
       "L 2.875 0 \n",
       "L 24.125 28.609375 \n",
       "L 4.6875 54.6875 \n",
       "L 15.28125 54.6875 \n",
       "L 29.78125 35.203125 \n",
       "L 44.28125 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-120\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-120\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m9b2934cafa\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"34.240625\" xlink:href=\"#m9b2934cafa\" y=\"136.922727\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(20.878125 140.721946)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"34.240625\" xlink:href=\"#m9b2934cafa\" y=\"105.645397\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(20.878125 109.444616)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"34.240625\" xlink:href=\"#m9b2934cafa\" y=\"74.368067\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_13\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(20.878125 78.167286)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"34.240625\" xlink:href=\"#m9b2934cafa\" y=\"43.090738\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_14\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(20.878125 46.889956)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"34.240625\" xlink:href=\"#m9b2934cafa\" y=\"11.813408\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_15\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(20.878125 15.612626)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_16\">\n",
       "     <!-- relu(x) -->\n",
       "     <g transform=\"translate(14.798438 91.588281)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "       <path d=\"M 8.5 21.578125 \n",
       "L 8.5 54.6875 \n",
       "L 17.484375 54.6875 \n",
       "L 17.484375 21.921875 \n",
       "Q 17.484375 14.15625 20.5 10.265625 \n",
       "Q 23.53125 6.390625 29.59375 6.390625 \n",
       "Q 36.859375 6.390625 41.078125 11.03125 \n",
       "Q 45.3125 15.671875 45.3125 23.6875 \n",
       "L 45.3125 54.6875 \n",
       "L 54.296875 54.6875 \n",
       "L 54.296875 0 \n",
       "L 45.3125 0 \n",
       "L 45.3125 8.40625 \n",
       "Q 42.046875 3.421875 37.71875 1 \n",
       "Q 33.40625 -1.421875 27.6875 -1.421875 \n",
       "Q 18.265625 -1.421875 13.375 4.4375 \n",
       "Q 8.5 10.296875 8.5 21.578125 \n",
       "z\n",
       "M 31.109375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-117\"/>\n",
       "       <path d=\"M 31 75.875 \n",
       "Q 24.46875 64.65625 21.28125 53.65625 \n",
       "Q 18.109375 42.671875 18.109375 31.390625 \n",
       "Q 18.109375 20.125 21.3125 9.0625 \n",
       "Q 24.515625 -2 31 -13.1875 \n",
       "L 23.1875 -13.1875 \n",
       "Q 15.875 -1.703125 12.234375 9.375 \n",
       "Q 8.59375 20.453125 8.59375 31.390625 \n",
       "Q 8.59375 42.28125 12.203125 53.3125 \n",
       "Q 15.828125 64.359375 23.1875 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-40\"/>\n",
       "       <path d=\"M 8.015625 75.875 \n",
       "L 15.828125 75.875 \n",
       "Q 23.140625 64.359375 26.78125 53.3125 \n",
       "Q 30.421875 42.28125 30.421875 31.390625 \n",
       "Q 30.421875 20.453125 26.78125 9.375 \n",
       "Q 23.140625 -1.703125 15.828125 -13.1875 \n",
       "L 8.015625 -13.1875 \n",
       "Q 14.5 -2 17.703125 9.0625 \n",
       "Q 20.90625 20.125 20.90625 31.390625 \n",
       "Q 20.90625 42.671875 17.703125 53.65625 \n",
       "Q 14.5 64.65625 8.015625 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-41\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"38.863281\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"100.386719\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"128.169922\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "      <use x=\"191.548828\" xlink:href=\"#DejaVuSans-40\"/>\n",
       "      <use x=\"230.5625\" xlink:href=\"#DejaVuSans-120\"/>\n",
       "      <use x=\"289.742188\" xlink:href=\"#DejaVuSans-41\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_15\">\n",
       "    <path clip-path=\"url(#pc7b6a64817)\" d=\"M 46.922443 136.922727 \n",
       "L 174.538223 136.922727 \n",
       "L 300.558807 13.377273 \n",
       "L 300.558807 13.377273 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 34.240625 143.1 \n",
       "L 34.240625 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 313.240625 143.1 \n",
       "L 313.240625 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 34.240625 143.1 \n",
       "L 313.240625 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 34.240625 7.2 \n",
       "L 313.240625 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"pc7b6a64817\">\n",
       "   <rect height=\"135.9\" width=\"279\" x=\"34.240625\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 360x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = torch.arange(-8.0, 8.0, 0.1, requires_grad=True)\n",
    "y = x.relu()\n",
    "xyplot(x, y, 'relu')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 329.98125 180.65625\" width=\"329.98125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:44:29.323422</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 329.98125 180.65625 \n",
       "L 329.98125 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 322.78125 143.1 \n",
       "L 322.78125 7.2 \n",
       "L 43.78125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"mdd71ebaad4\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"56.463068\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- −8 -->\n",
       "      <g transform=\"translate(49.091974 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"88.367013\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- −6 -->\n",
       "      <g transform=\"translate(80.995919 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"120.270958\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- −4 -->\n",
       "      <g transform=\"translate(112.899864 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"152.174903\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- −2 -->\n",
       "      <g transform=\"translate(144.803809 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"184.078848\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(180.897598 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"215.982793\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(212.801543 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_7\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"247.886738\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(244.705488 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_8\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"279.790683\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(276.609433 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_9\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"311.694628\" xlink:href=\"#mdd71ebaad4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(308.513378 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_10\">\n",
       "     <!-- x -->\n",
       "     <g transform=\"translate(180.321875 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 54.890625 54.6875 \n",
       "L 35.109375 28.078125 \n",
       "L 55.90625 0 \n",
       "L 45.3125 0 \n",
       "L 29.390625 21.484375 \n",
       "L 13.484375 0 \n",
       "L 2.875 0 \n",
       "L 24.125 28.609375 \n",
       "L 4.6875 54.6875 \n",
       "L 15.28125 54.6875 \n",
       "L 29.78125 35.203125 \n",
       "L 44.28125 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-120\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-120\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m1ea427b0f4\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m1ea427b0f4\" y=\"136.922727\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- 0.0 -->\n",
       "      <g transform=\"translate(20.878125 140.721946)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.6875 12.40625 \n",
       "L 21 12.40625 \n",
       "L 21 0 \n",
       "L 10.6875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-46\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m1ea427b0f4\" y=\"112.213636\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- 0.2 -->\n",
       "      <g transform=\"translate(20.878125 116.012855)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m1ea427b0f4\" y=\"87.504545\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_13\">\n",
       "      <!-- 0.4 -->\n",
       "      <g transform=\"translate(20.878125 91.303764)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m1ea427b0f4\" y=\"62.795455\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_14\">\n",
       "      <!-- 0.6 -->\n",
       "      <g transform=\"translate(20.878125 66.594673)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m1ea427b0f4\" y=\"38.086364\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_15\">\n",
       "      <!-- 0.8 -->\n",
       "      <g transform=\"translate(20.878125 41.885582)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m1ea427b0f4\" y=\"13.377273\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_16\">\n",
       "      <!-- 1.0 -->\n",
       "      <g transform=\"translate(20.878125 17.176491)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_17\">\n",
       "     <!-- grad of relu(x) -->\n",
       "     <g transform=\"translate(14.798438 111.053906)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 45.40625 27.984375 \n",
       "Q 45.40625 37.75 41.375 43.109375 \n",
       "Q 37.359375 48.484375 30.078125 48.484375 \n",
       "Q 22.859375 48.484375 18.828125 43.109375 \n",
       "Q 14.796875 37.75 14.796875 27.984375 \n",
       "Q 14.796875 18.265625 18.828125 12.890625 \n",
       "Q 22.859375 7.515625 30.078125 7.515625 \n",
       "Q 37.359375 7.515625 41.375 12.890625 \n",
       "Q 45.40625 18.265625 45.40625 27.984375 \n",
       "z\n",
       "M 54.390625 6.78125 \n",
       "Q 54.390625 -7.171875 48.1875 -13.984375 \n",
       "Q 42 -20.796875 29.203125 -20.796875 \n",
       "Q 24.46875 -20.796875 20.265625 -20.09375 \n",
       "Q 16.0625 -19.390625 12.109375 -17.921875 \n",
       "L 12.109375 -9.1875 \n",
       "Q 16.0625 -11.328125 19.921875 -12.34375 \n",
       "Q 23.78125 -13.375 27.78125 -13.375 \n",
       "Q 36.625 -13.375 41.015625 -8.765625 \n",
       "Q 45.40625 -4.15625 45.40625 5.171875 \n",
       "L 45.40625 9.625 \n",
       "Q 42.625 4.78125 38.28125 2.390625 \n",
       "Q 33.9375 0 27.875 0 \n",
       "Q 17.828125 0 11.671875 7.65625 \n",
       "Q 5.515625 15.328125 5.515625 27.984375 \n",
       "Q 5.515625 40.671875 11.671875 48.328125 \n",
       "Q 17.828125 56 27.875 56 \n",
       "Q 33.9375 56 38.28125 53.609375 \n",
       "Q 42.625 51.21875 45.40625 46.390625 \n",
       "L 45.40625 54.6875 \n",
       "L 54.390625 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-103\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 45.40625 46.390625 \n",
       "L 45.40625 75.984375 \n",
       "L 54.390625 75.984375 \n",
       "L 54.390625 0 \n",
       "L 45.40625 0 \n",
       "L 45.40625 8.203125 \n",
       "Q 42.578125 3.328125 38.25 0.953125 \n",
       "Q 33.9375 -1.421875 27.875 -1.421875 \n",
       "Q 17.96875 -1.421875 11.734375 6.484375 \n",
       "Q 5.515625 14.40625 5.515625 27.296875 \n",
       "Q 5.515625 40.1875 11.734375 48.09375 \n",
       "Q 17.96875 56 27.875 56 \n",
       "Q 33.9375 56 38.25 53.625 \n",
       "Q 42.578125 51.265625 45.40625 46.390625 \n",
       "z\n",
       "M 14.796875 27.296875 \n",
       "Q 14.796875 17.390625 18.875 11.75 \n",
       "Q 22.953125 6.109375 30.078125 6.109375 \n",
       "Q 37.203125 6.109375 41.296875 11.75 \n",
       "Q 45.40625 17.390625 45.40625 27.296875 \n",
       "Q 45.40625 37.203125 41.296875 42.84375 \n",
       "Q 37.203125 48.484375 30.078125 48.484375 \n",
       "Q 22.953125 48.484375 18.875 42.84375 \n",
       "Q 14.796875 37.203125 14.796875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-100\"/>\n",
       "       <path id=\"DejaVuSans-32\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 37.109375 75.984375 \n",
       "L 37.109375 68.5 \n",
       "L 28.515625 68.5 \n",
       "Q 23.6875 68.5 21.796875 66.546875 \n",
       "Q 19.921875 64.59375 19.921875 59.515625 \n",
       "L 19.921875 54.6875 \n",
       "L 34.71875 54.6875 \n",
       "L 34.71875 47.703125 \n",
       "L 19.921875 47.703125 \n",
       "L 19.921875 0 \n",
       "L 10.890625 0 \n",
       "L 10.890625 47.703125 \n",
       "L 2.296875 47.703125 \n",
       "L 2.296875 54.6875 \n",
       "L 10.890625 54.6875 \n",
       "L 10.890625 58.5 \n",
       "Q 10.890625 67.625 15.140625 71.796875 \n",
       "Q 19.390625 75.984375 28.609375 75.984375 \n",
       "z\n",
       "\" id=\"DejaVuSans-102\"/>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "       <path d=\"M 8.5 21.578125 \n",
       "L 8.5 54.6875 \n",
       "L 17.484375 54.6875 \n",
       "L 17.484375 21.921875 \n",
       "Q 17.484375 14.15625 20.5 10.265625 \n",
       "Q 23.53125 6.390625 29.59375 6.390625 \n",
       "Q 36.859375 6.390625 41.078125 11.03125 \n",
       "Q 45.3125 15.671875 45.3125 23.6875 \n",
       "L 45.3125 54.6875 \n",
       "L 54.296875 54.6875 \n",
       "L 54.296875 0 \n",
       "L 45.3125 0 \n",
       "L 45.3125 8.40625 \n",
       "Q 42.046875 3.421875 37.71875 1 \n",
       "Q 33.40625 -1.421875 27.6875 -1.421875 \n",
       "Q 18.265625 -1.421875 13.375 4.4375 \n",
       "Q 8.5 10.296875 8.5 21.578125 \n",
       "z\n",
       "M 31.109375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-117\"/>\n",
       "       <path d=\"M 31 75.875 \n",
       "Q 24.46875 64.65625 21.28125 53.65625 \n",
       "Q 18.109375 42.671875 18.109375 31.390625 \n",
       "Q 18.109375 20.125 21.3125 9.0625 \n",
       "Q 24.515625 -2 31 -13.1875 \n",
       "L 23.1875 -13.1875 \n",
       "Q 15.875 -1.703125 12.234375 9.375 \n",
       "Q 8.59375 20.453125 8.59375 31.390625 \n",
       "Q 8.59375 42.28125 12.203125 53.3125 \n",
       "Q 15.828125 64.359375 23.1875 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-40\"/>\n",
       "       <path d=\"M 8.015625 75.875 \n",
       "L 15.828125 75.875 \n",
       "Q 23.140625 64.359375 26.78125 53.3125 \n",
       "Q 30.421875 42.28125 30.421875 31.390625 \n",
       "Q 30.421875 20.453125 26.78125 9.375 \n",
       "Q 23.140625 -1.703125 15.828125 -13.1875 \n",
       "L 8.015625 -13.1875 \n",
       "Q 14.5 -2 17.703125 9.0625 \n",
       "Q 20.90625 20.125 20.90625 31.390625 \n",
       "Q 20.90625 42.671875 17.703125 53.65625 \n",
       "Q 14.5 64.65625 8.015625 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-41\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-103\"/>\n",
       "      <use x=\"63.476562\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"104.589844\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"165.869141\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "      <use x=\"229.345703\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "      <use x=\"261.132812\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"322.314453\" xlink:href=\"#DejaVuSans-102\"/>\n",
       "      <use x=\"357.519531\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "      <use x=\"389.306641\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"428.169922\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"489.693359\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"517.476562\" xlink:href=\"#DejaVuSans-117\"/>\n",
       "      <use x=\"580.855469\" xlink:href=\"#DejaVuSans-40\"/>\n",
       "      <use x=\"619.869141\" xlink:href=\"#DejaVuSans-120\"/>\n",
       "      <use x=\"679.048828\" xlink:href=\"#DejaVuSans-41\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_16\">\n",
       "    <path clip-path=\"url(#p0a9a21e196)\" d=\"M 56.463068 136.922727 \n",
       "L 184.078848 136.922727 \n",
       "L 185.674045 13.377273 \n",
       "L 310.099432 13.377273 \n",
       "L 310.099432 13.377273 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 43.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 322.78125 143.1 \n",
       "L 322.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 322.78125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 43.78125 7.2 \n",
       "L 322.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p0a9a21e196\">\n",
       "   <rect height=\"135.9\" width=\"279\" x=\"43.78125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 360x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "y.sum().backward()\n",
    "xyplot(x, x.grad, 'grad of relu')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "sigmoid"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 329.98125 180.65625\" width=\"329.98125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:44:29.633260</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 329.98125 180.65625 \n",
       "L 329.98125 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 322.78125 143.1 \n",
       "L 322.78125 7.2 \n",
       "L 43.78125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"mbda8b0910a\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"56.463068\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- −8 -->\n",
       "      <g transform=\"translate(49.091974 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"88.367013\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- −6 -->\n",
       "      <g transform=\"translate(80.995919 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"120.270958\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- −4 -->\n",
       "      <g transform=\"translate(112.899864 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"152.174903\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- −2 -->\n",
       "      <g transform=\"translate(144.803809 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"184.078848\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(180.897598 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"215.982793\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(212.801543 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_7\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"247.886738\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(244.705488 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_8\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"279.790683\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(276.609433 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_9\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"311.694628\" xlink:href=\"#mbda8b0910a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(308.513378 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_10\">\n",
       "     <!-- x -->\n",
       "     <g transform=\"translate(180.321875 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 54.890625 54.6875 \n",
       "L 35.109375 28.078125 \n",
       "L 55.90625 0 \n",
       "L 45.3125 0 \n",
       "L 29.390625 21.484375 \n",
       "L 13.484375 0 \n",
       "L 2.875 0 \n",
       "L 24.125 28.609375 \n",
       "L 4.6875 54.6875 \n",
       "L 15.28125 54.6875 \n",
       "L 29.78125 35.203125 \n",
       "L 44.28125 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-120\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-120\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m048c40bc01\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m048c40bc01\" y=\"136.964188\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- 0.0 -->\n",
       "      <g transform=\"translate(20.878125 140.763406)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.6875 12.40625 \n",
       "L 21 12.40625 \n",
       "L 21 0 \n",
       "L 10.6875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-46\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m048c40bc01\" y=\"112.23764\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- 0.2 -->\n",
       "      <g transform=\"translate(20.878125 116.036859)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m048c40bc01\" y=\"87.511093\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_13\">\n",
       "      <!-- 0.4 -->\n",
       "      <g transform=\"translate(20.878125 91.310312)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m048c40bc01\" y=\"62.784546\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_14\">\n",
       "      <!-- 0.6 -->\n",
       "      <g transform=\"translate(20.878125 66.583765)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m048c40bc01\" y=\"38.057999\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_15\">\n",
       "      <!-- 0.8 -->\n",
       "      <g transform=\"translate(20.878125 41.857218)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#m048c40bc01\" y=\"13.331452\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_16\">\n",
       "      <!-- 1.0 -->\n",
       "      <g transform=\"translate(20.878125 17.130671)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_17\">\n",
       "     <!-- sigmoid(x) -->\n",
       "     <g transform=\"translate(14.798438 101.671875)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 45.40625 27.984375 \n",
       "Q 45.40625 37.75 41.375 43.109375 \n",
       "Q 37.359375 48.484375 30.078125 48.484375 \n",
       "Q 22.859375 48.484375 18.828125 43.109375 \n",
       "Q 14.796875 37.75 14.796875 27.984375 \n",
       "Q 14.796875 18.265625 18.828125 12.890625 \n",
       "Q 22.859375 7.515625 30.078125 7.515625 \n",
       "Q 37.359375 7.515625 41.375 12.890625 \n",
       "Q 45.40625 18.265625 45.40625 27.984375 \n",
       "z\n",
       "M 54.390625 6.78125 \n",
       "Q 54.390625 -7.171875 48.1875 -13.984375 \n",
       "Q 42 -20.796875 29.203125 -20.796875 \n",
       "Q 24.46875 -20.796875 20.265625 -20.09375 \n",
       "Q 16.0625 -19.390625 12.109375 -17.921875 \n",
       "L 12.109375 -9.1875 \n",
       "Q 16.0625 -11.328125 19.921875 -12.34375 \n",
       "Q 23.78125 -13.375 27.78125 -13.375 \n",
       "Q 36.625 -13.375 41.015625 -8.765625 \n",
       "Q 45.40625 -4.15625 45.40625 5.171875 \n",
       "L 45.40625 9.625 \n",
       "Q 42.625 4.78125 38.28125 2.390625 \n",
       "Q 33.9375 0 27.875 0 \n",
       "Q 17.828125 0 11.671875 7.65625 \n",
       "Q 5.515625 15.328125 5.515625 27.984375 \n",
       "Q 5.515625 40.671875 11.671875 48.328125 \n",
       "Q 17.828125 56 27.875 56 \n",
       "Q 33.9375 56 38.28125 53.609375 \n",
       "Q 42.625 51.21875 45.40625 46.390625 \n",
       "L 45.40625 54.6875 \n",
       "L 54.390625 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-103\"/>\n",
       "       <path d=\"M 52 44.1875 \n",
       "Q 55.375 50.25 60.0625 53.125 \n",
       "Q 64.75 56 71.09375 56 \n",
       "Q 79.640625 56 84.28125 50.015625 \n",
       "Q 88.921875 44.046875 88.921875 33.015625 \n",
       "L 88.921875 0 \n",
       "L 79.890625 0 \n",
       "L 79.890625 32.71875 \n",
       "Q 79.890625 40.578125 77.09375 44.375 \n",
       "Q 74.3125 48.1875 68.609375 48.1875 \n",
       "Q 61.625 48.1875 57.5625 43.546875 \n",
       "Q 53.515625 38.921875 53.515625 30.90625 \n",
       "L 53.515625 0 \n",
       "L 44.484375 0 \n",
       "L 44.484375 32.71875 \n",
       "Q 44.484375 40.625 41.703125 44.40625 \n",
       "Q 38.921875 48.1875 33.109375 48.1875 \n",
       "Q 26.21875 48.1875 22.15625 43.53125 \n",
       "Q 18.109375 38.875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.1875 51.21875 25.484375 53.609375 \n",
       "Q 29.78125 56 35.6875 56 \n",
       "Q 41.65625 56 45.828125 52.96875 \n",
       "Q 50 49.953125 52 44.1875 \n",
       "z\n",
       "\" id=\"DejaVuSans-109\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 45.40625 46.390625 \n",
       "L 45.40625 75.984375 \n",
       "L 54.390625 75.984375 \n",
       "L 54.390625 0 \n",
       "L 45.40625 0 \n",
       "L 45.40625 8.203125 \n",
       "Q 42.578125 3.328125 38.25 0.953125 \n",
       "Q 33.9375 -1.421875 27.875 -1.421875 \n",
       "Q 17.96875 -1.421875 11.734375 6.484375 \n",
       "Q 5.515625 14.40625 5.515625 27.296875 \n",
       "Q 5.515625 40.1875 11.734375 48.09375 \n",
       "Q 17.96875 56 27.875 56 \n",
       "Q 33.9375 56 38.25 53.625 \n",
       "Q 42.578125 51.265625 45.40625 46.390625 \n",
       "z\n",
       "M 14.796875 27.296875 \n",
       "Q 14.796875 17.390625 18.875 11.75 \n",
       "Q 22.953125 6.109375 30.078125 6.109375 \n",
       "Q 37.203125 6.109375 41.296875 11.75 \n",
       "Q 45.40625 17.390625 45.40625 27.296875 \n",
       "Q 45.40625 37.203125 41.296875 42.84375 \n",
       "Q 37.203125 48.484375 30.078125 48.484375 \n",
       "Q 22.953125 48.484375 18.875 42.84375 \n",
       "Q 14.796875 37.203125 14.796875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-100\"/>\n",
       "       <path d=\"M 31 75.875 \n",
       "Q 24.46875 64.65625 21.28125 53.65625 \n",
       "Q 18.109375 42.671875 18.109375 31.390625 \n",
       "Q 18.109375 20.125 21.3125 9.0625 \n",
       "Q 24.515625 -2 31 -13.1875 \n",
       "L 23.1875 -13.1875 \n",
       "Q 15.875 -1.703125 12.234375 9.375 \n",
       "Q 8.59375 20.453125 8.59375 31.390625 \n",
       "Q 8.59375 42.28125 12.203125 53.3125 \n",
       "Q 15.828125 64.359375 23.1875 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-40\"/>\n",
       "       <path d=\"M 8.015625 75.875 \n",
       "L 15.828125 75.875 \n",
       "Q 23.140625 64.359375 26.78125 53.3125 \n",
       "Q 30.421875 42.28125 30.421875 31.390625 \n",
       "Q 30.421875 20.453125 26.78125 9.375 \n",
       "Q 23.140625 -1.703125 15.828125 -13.1875 \n",
       "L 8.015625 -13.1875 \n",
       "Q 14.5 -2 17.703125 9.0625 \n",
       "Q 20.90625 20.125 20.90625 31.390625 \n",
       "Q 20.90625 42.671875 17.703125 53.65625 \n",
       "Q 14.5 64.65625 8.015625 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-41\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"52.099609\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"79.882812\" xlink:href=\"#DejaVuSans-103\"/>\n",
       "      <use x=\"143.359375\" xlink:href=\"#DejaVuSans-109\"/>\n",
       "      <use x=\"240.771484\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"301.953125\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"329.736328\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "      <use x=\"393.212891\" xlink:href=\"#DejaVuSans-40\"/>\n",
       "      <use x=\"432.226562\" xlink:href=\"#DejaVuSans-120\"/>\n",
       "      <use x=\"491.40625\" xlink:href=\"#DejaVuSans-41\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_16\">\n",
       "    <path clip-path=\"url(#p0c697e71ea)\" d=\"M 56.463068 136.922727 \n",
       "L 83.581418 136.737576 \n",
       "L 96.342999 136.460985 \n",
       "L 105.914181 136.050351 \n",
       "L 113.890168 135.464716 \n",
       "L 120.270958 134.740503 \n",
       "L 125.056549 133.981298 \n",
       "L 129.84214 132.971411 \n",
       "L 133.032535 132.122022 \n",
       "L 136.22293 131.100797 \n",
       "L 139.413326 129.877043 \n",
       "L 142.603721 128.416414 \n",
       "L 145.794112 126.68132 \n",
       "L 148.984508 124.631763 \n",
       "L 152.174903 122.226805 \n",
       "L 155.365298 119.426752 \n",
       "L 158.555692 116.196162 \n",
       "L 161.746087 112.507641 \n",
       "L 164.93648 108.346273 \n",
       "L 168.126875 103.714222 \n",
       "L 171.31727 98.634885 \n",
       "L 174.507664 93.155705 \n",
       "L 179.293256 84.35135 \n",
       "L 193.650032 57.139934 \n",
       "L 196.840426 51.660754 \n",
       "L 200.03082 46.581413 \n",
       "L 203.221216 41.949361 \n",
       "L 206.411609 37.787994 \n",
       "L 209.602004 34.09948 \n",
       "L 212.792398 30.868895 \n",
       "L 215.982793 28.068841 \n",
       "L 219.173188 25.663874 \n",
       "L 222.363583 23.614318 \n",
       "L 225.553975 21.879222 \n",
       "L 228.74437 20.418596 \n",
       "L 231.934765 19.194841 \n",
       "L 235.12516 18.173619 \n",
       "L 239.910751 16.955406 \n",
       "L 244.696342 16.036702 \n",
       "L 249.481933 15.346978 \n",
       "L 255.862724 14.689795 \n",
       "L 263.83871 14.158904 \n",
       "L 273.409892 13.786942 \n",
       "L 286.171473 13.536533 \n",
       "L 306.909033 13.38742 \n",
       "L 310.099432 13.377273 \n",
       "L 310.099432 13.377273 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 43.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 322.78125 143.1 \n",
       "L 322.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 322.78125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 43.78125 7.2 \n",
       "L 322.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p0c697e71ea\">\n",
       "   <rect height=\"135.9\" width=\"279\" x=\"43.78125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 360x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "y = x.sigmoid()\n",
    "xyplot(x, y, 'sigmoid')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 336.34375 180.65625\" width=\"336.34375pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:44:29.943094</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 336.34375 180.65625 \n",
       "L 336.34375 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 50.14375 143.1 \n",
       "L 329.14375 143.1 \n",
       "L 329.14375 7.2 \n",
       "L 50.14375 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m651ae89ec4\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"62.825568\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- −8 -->\n",
       "      <g transform=\"translate(55.454474 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"94.729513\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- −6 -->\n",
       "      <g transform=\"translate(87.358419 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"126.633458\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- −4 -->\n",
       "      <g transform=\"translate(119.262364 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"158.537403\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- −2 -->\n",
       "      <g transform=\"translate(151.166309 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"190.441348\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(187.260098 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"222.345293\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(219.164043 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_7\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"254.249238\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(251.067988 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_8\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"286.153183\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(282.971933 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_9\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"318.057128\" xlink:href=\"#m651ae89ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(314.875878 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_10\">\n",
       "     <!-- x -->\n",
       "     <g transform=\"translate(186.684375 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 54.890625 54.6875 \n",
       "L 35.109375 28.078125 \n",
       "L 55.90625 0 \n",
       "L 45.3125 0 \n",
       "L 29.390625 21.484375 \n",
       "L 13.484375 0 \n",
       "L 2.875 0 \n",
       "L 24.125 28.609375 \n",
       "L 4.6875 54.6875 \n",
       "L 15.28125 54.6875 \n",
       "L 29.78125 35.203125 \n",
       "L 44.28125 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-120\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-120\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"mecf52f5e6f\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"50.14375\" xlink:href=\"#mecf52f5e6f\" y=\"137.088618\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- 0.00 -->\n",
       "      <g transform=\"translate(20.878125 140.887837)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.6875 12.40625 \n",
       "L 21 12.40625 \n",
       "L 21 0 \n",
       "L 10.6875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-46\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"159.033203\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"50.14375\" xlink:href=\"#mecf52f5e6f\" y=\"112.346349\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- 0.05 -->\n",
       "      <g transform=\"translate(20.878125 116.145568)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.796875 72.90625 \n",
       "L 49.515625 72.90625 \n",
       "L 49.515625 64.59375 \n",
       "L 19.828125 64.59375 \n",
       "L 19.828125 46.734375 \n",
       "Q 21.96875 47.46875 24.109375 47.828125 \n",
       "Q 26.265625 48.1875 28.421875 48.1875 \n",
       "Q 40.625 48.1875 47.75 41.5 \n",
       "Q 54.890625 34.8125 54.890625 23.390625 \n",
       "Q 54.890625 11.625 47.5625 5.09375 \n",
       "Q 40.234375 -1.421875 26.90625 -1.421875 \n",
       "Q 22.3125 -1.421875 17.546875 -0.640625 \n",
       "Q 12.796875 0.140625 7.71875 1.703125 \n",
       "L 7.71875 11.625 \n",
       "Q 12.109375 9.234375 16.796875 8.0625 \n",
       "Q 21.484375 6.890625 26.703125 6.890625 \n",
       "Q 35.15625 6.890625 40.078125 11.328125 \n",
       "Q 45.015625 15.765625 45.015625 23.390625 \n",
       "Q 45.015625 31 40.078125 35.4375 \n",
       "Q 35.15625 39.890625 26.703125 39.890625 \n",
       "Q 22.75 39.890625 18.8125 39.015625 \n",
       "Q 14.890625 38.140625 10.796875 36.28125 \n",
       "z\n",
       "\" id=\"DejaVuSans-53\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"159.033203\" xlink:href=\"#DejaVuSans-53\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"50.14375\" xlink:href=\"#mecf52f5e6f\" y=\"87.60408\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_13\">\n",
       "      <!-- 0.10 -->\n",
       "      <g transform=\"translate(20.878125 91.403299)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"159.033203\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"50.14375\" xlink:href=\"#mecf52f5e6f\" y=\"62.861811\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_14\">\n",
       "      <!-- 0.15 -->\n",
       "      <g transform=\"translate(20.878125 66.66103)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"159.033203\" xlink:href=\"#DejaVuSans-53\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"50.14375\" xlink:href=\"#mecf52f5e6f\" y=\"38.119542\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_15\">\n",
       "      <!-- 0.20 -->\n",
       "      <g transform=\"translate(20.878125 41.918761)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"159.033203\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"50.14375\" xlink:href=\"#mecf52f5e6f\" y=\"13.377273\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_16\">\n",
       "      <!-- 0.25 -->\n",
       "      <g transform=\"translate(20.878125 17.176491)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"159.033203\" xlink:href=\"#DejaVuSans-53\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_17\">\n",
       "     <!-- grad of sigmoid(x) -->\n",
       "     <g transform=\"translate(14.798438 121.1375)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 45.40625 27.984375 \n",
       "Q 45.40625 37.75 41.375 43.109375 \n",
       "Q 37.359375 48.484375 30.078125 48.484375 \n",
       "Q 22.859375 48.484375 18.828125 43.109375 \n",
       "Q 14.796875 37.75 14.796875 27.984375 \n",
       "Q 14.796875 18.265625 18.828125 12.890625 \n",
       "Q 22.859375 7.515625 30.078125 7.515625 \n",
       "Q 37.359375 7.515625 41.375 12.890625 \n",
       "Q 45.40625 18.265625 45.40625 27.984375 \n",
       "z\n",
       "M 54.390625 6.78125 \n",
       "Q 54.390625 -7.171875 48.1875 -13.984375 \n",
       "Q 42 -20.796875 29.203125 -20.796875 \n",
       "Q 24.46875 -20.796875 20.265625 -20.09375 \n",
       "Q 16.0625 -19.390625 12.109375 -17.921875 \n",
       "L 12.109375 -9.1875 \n",
       "Q 16.0625 -11.328125 19.921875 -12.34375 \n",
       "Q 23.78125 -13.375 27.78125 -13.375 \n",
       "Q 36.625 -13.375 41.015625 -8.765625 \n",
       "Q 45.40625 -4.15625 45.40625 5.171875 \n",
       "L 45.40625 9.625 \n",
       "Q 42.625 4.78125 38.28125 2.390625 \n",
       "Q 33.9375 0 27.875 0 \n",
       "Q 17.828125 0 11.671875 7.65625 \n",
       "Q 5.515625 15.328125 5.515625 27.984375 \n",
       "Q 5.515625 40.671875 11.671875 48.328125 \n",
       "Q 17.828125 56 27.875 56 \n",
       "Q 33.9375 56 38.28125 53.609375 \n",
       "Q 42.625 51.21875 45.40625 46.390625 \n",
       "L 45.40625 54.6875 \n",
       "L 54.390625 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-103\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 45.40625 46.390625 \n",
       "L 45.40625 75.984375 \n",
       "L 54.390625 75.984375 \n",
       "L 54.390625 0 \n",
       "L 45.40625 0 \n",
       "L 45.40625 8.203125 \n",
       "Q 42.578125 3.328125 38.25 0.953125 \n",
       "Q 33.9375 -1.421875 27.875 -1.421875 \n",
       "Q 17.96875 -1.421875 11.734375 6.484375 \n",
       "Q 5.515625 14.40625 5.515625 27.296875 \n",
       "Q 5.515625 40.1875 11.734375 48.09375 \n",
       "Q 17.96875 56 27.875 56 \n",
       "Q 33.9375 56 38.25 53.625 \n",
       "Q 42.578125 51.265625 45.40625 46.390625 \n",
       "z\n",
       "M 14.796875 27.296875 \n",
       "Q 14.796875 17.390625 18.875 11.75 \n",
       "Q 22.953125 6.109375 30.078125 6.109375 \n",
       "Q 37.203125 6.109375 41.296875 11.75 \n",
       "Q 45.40625 17.390625 45.40625 27.296875 \n",
       "Q 45.40625 37.203125 41.296875 42.84375 \n",
       "Q 37.203125 48.484375 30.078125 48.484375 \n",
       "Q 22.953125 48.484375 18.875 42.84375 \n",
       "Q 14.796875 37.203125 14.796875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-100\"/>\n",
       "       <path id=\"DejaVuSans-32\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 37.109375 75.984375 \n",
       "L 37.109375 68.5 \n",
       "L 28.515625 68.5 \n",
       "Q 23.6875 68.5 21.796875 66.546875 \n",
       "Q 19.921875 64.59375 19.921875 59.515625 \n",
       "L 19.921875 54.6875 \n",
       "L 34.71875 54.6875 \n",
       "L 34.71875 47.703125 \n",
       "L 19.921875 47.703125 \n",
       "L 19.921875 0 \n",
       "L 10.890625 0 \n",
       "L 10.890625 47.703125 \n",
       "L 2.296875 47.703125 \n",
       "L 2.296875 54.6875 \n",
       "L 10.890625 54.6875 \n",
       "L 10.890625 58.5 \n",
       "Q 10.890625 67.625 15.140625 71.796875 \n",
       "Q 19.390625 75.984375 28.609375 75.984375 \n",
       "z\n",
       "\" id=\"DejaVuSans-102\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 52 44.1875 \n",
       "Q 55.375 50.25 60.0625 53.125 \n",
       "Q 64.75 56 71.09375 56 \n",
       "Q 79.640625 56 84.28125 50.015625 \n",
       "Q 88.921875 44.046875 88.921875 33.015625 \n",
       "L 88.921875 0 \n",
       "L 79.890625 0 \n",
       "L 79.890625 32.71875 \n",
       "Q 79.890625 40.578125 77.09375 44.375 \n",
       "Q 74.3125 48.1875 68.609375 48.1875 \n",
       "Q 61.625 48.1875 57.5625 43.546875 \n",
       "Q 53.515625 38.921875 53.515625 30.90625 \n",
       "L 53.515625 0 \n",
       "L 44.484375 0 \n",
       "L 44.484375 32.71875 \n",
       "Q 44.484375 40.625 41.703125 44.40625 \n",
       "Q 38.921875 48.1875 33.109375 48.1875 \n",
       "Q 26.21875 48.1875 22.15625 43.53125 \n",
       "Q 18.109375 38.875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.1875 51.21875 25.484375 53.609375 \n",
       "Q 29.78125 56 35.6875 56 \n",
       "Q 41.65625 56 45.828125 52.96875 \n",
       "Q 50 49.953125 52 44.1875 \n",
       "z\n",
       "\" id=\"DejaVuSans-109\"/>\n",
       "       <path d=\"M 31 75.875 \n",
       "Q 24.46875 64.65625 21.28125 53.65625 \n",
       "Q 18.109375 42.671875 18.109375 31.390625 \n",
       "Q 18.109375 20.125 21.3125 9.0625 \n",
       "Q 24.515625 -2 31 -13.1875 \n",
       "L 23.1875 -13.1875 \n",
       "Q 15.875 -1.703125 12.234375 9.375 \n",
       "Q 8.59375 20.453125 8.59375 31.390625 \n",
       "Q 8.59375 42.28125 12.203125 53.3125 \n",
       "Q 15.828125 64.359375 23.1875 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-40\"/>\n",
       "       <path d=\"M 8.015625 75.875 \n",
       "L 15.828125 75.875 \n",
       "Q 23.140625 64.359375 26.78125 53.3125 \n",
       "Q 30.421875 42.28125 30.421875 31.390625 \n",
       "Q 30.421875 20.453125 26.78125 9.375 \n",
       "Q 23.140625 -1.703125 15.828125 -13.1875 \n",
       "L 8.015625 -13.1875 \n",
       "Q 14.5 -2 17.703125 9.0625 \n",
       "Q 20.90625 20.125 20.90625 31.390625 \n",
       "Q 20.90625 42.671875 17.703125 53.65625 \n",
       "Q 14.5 64.65625 8.015625 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-41\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-103\"/>\n",
       "      <use x=\"63.476562\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"104.589844\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"165.869141\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "      <use x=\"229.345703\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "      <use x=\"261.132812\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"322.314453\" xlink:href=\"#DejaVuSans-102\"/>\n",
       "      <use x=\"357.519531\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "      <use x=\"389.306641\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"441.40625\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"469.189453\" xlink:href=\"#DejaVuSans-103\"/>\n",
       "      <use x=\"532.666016\" xlink:href=\"#DejaVuSans-109\"/>\n",
       "      <use x=\"630.078125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"691.259766\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"719.042969\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "      <use x=\"782.519531\" xlink:href=\"#DejaVuSans-40\"/>\n",
       "      <use x=\"821.533203\" xlink:href=\"#DejaVuSans-120\"/>\n",
       "      <use x=\"880.712891\" xlink:href=\"#DejaVuSans-41\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_16\">\n",
       "    <path clip-path=\"url(#p060e5022ea)\" d=\"M 62.825568 136.922727 \n",
       "L 78.777541 136.638199 \n",
       "L 88.348723 136.26913 \n",
       "L 96.324709 135.740413 \n",
       "L 102.705499 135.082727 \n",
       "L 107.491094 134.388643 \n",
       "L 112.276681 133.457984 \n",
       "L 115.46708 132.668629 \n",
       "L 118.657472 131.711515 \n",
       "L 121.847863 130.552846 \n",
       "L 125.038262 129.152917 \n",
       "L 128.228654 127.465526 \n",
       "L 131.419049 125.43753 \n",
       "L 134.609444 123.008771 \n",
       "L 137.79984 120.112511 \n",
       "L 140.990235 116.676728 \n",
       "L 144.180626 112.626646 \n",
       "L 147.371021 107.888923 \n",
       "L 150.561417 102.39812 \n",
       "L 153.751812 96.105738 \n",
       "L 156.942207 88.992262 \n",
       "L 160.132601 81.08189 \n",
       "L 163.322994 72.45897 \n",
       "L 168.108587 58.564131 \n",
       "L 174.489375 39.796107 \n",
       "L 177.67977 31.236391 \n",
       "L 179.274967 27.375027 \n",
       "L 180.870164 23.87579 \n",
       "L 182.465362 20.798118 \n",
       "L 184.060559 18.196696 \n",
       "L 185.655756 16.119549 \n",
       "L 187.250953 14.606185 \n",
       "L 188.846151 13.686035 \n",
       "L 190.441348 13.377273 \n",
       "L 192.036545 13.686035 \n",
       "L 193.631742 14.606185 \n",
       "L 195.22694 16.119549 \n",
       "L 196.822137 18.196696 \n",
       "L 198.417334 20.798118 \n",
       "L 200.012532 23.87579 \n",
       "L 201.607728 27.37502 \n",
       "L 203.202926 31.236391 \n",
       "L 206.39332 39.796115 \n",
       "L 211.178911 53.806965 \n",
       "L 215.964504 67.927146 \n",
       "L 219.154898 76.851396 \n",
       "L 222.345293 85.133007 \n",
       "L 225.535688 92.651352 \n",
       "L 228.726083 99.35419 \n",
       "L 231.916475 105.241217 \n",
       "L 235.10687 110.348108 \n",
       "L 238.297265 114.733159 \n",
       "L 241.48766 118.466706 \n",
       "L 244.678056 121.623505 \n",
       "L 247.868447 124.277258 \n",
       "L 251.058842 126.497666 \n",
       "L 254.249238 128.348296 \n",
       "L 257.439629 129.885771 \n",
       "L 260.630028 131.159691 \n",
       "L 263.82042 132.21301 \n",
       "L 267.010819 133.082384 \n",
       "L 271.796406 134.108142 \n",
       "L 276.582001 134.873661 \n",
       "L 282.962791 135.599466 \n",
       "L 289.343574 136.088434 \n",
       "L 297.31956 136.480971 \n",
       "L 308.485946 136.786478 \n",
       "L 316.461932 136.905286 \n",
       "L 316.461932 136.905286 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 50.14375 143.1 \n",
       "L 50.14375 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 329.14375 143.1 \n",
       "L 329.14375 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 50.14375 143.1 \n",
       "L 329.14375 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 50.14375 7.2 \n",
       "L 329.14375 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p060e5022ea\">\n",
       "   <rect height=\"135.9\" width=\"279\" x=\"50.14375\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 360x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "x.grad.zero_()\n",
    "y.sum().backward()\n",
    "xyplot(x, x.grad, 'grad of sigmoid')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "tanh"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 338.360937 180.65625\" width=\"338.360937pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:44:30.233387</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 338.360937 180.65625 \n",
       "L 338.360937 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 52.160938 143.1 \n",
       "L 331.160937 143.1 \n",
       "L 331.160937 7.2 \n",
       "L 52.160938 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m628beee0b9\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"64.842756\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- −8 -->\n",
       "      <g transform=\"translate(57.471662 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"96.746701\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- −6 -->\n",
       "      <g transform=\"translate(89.375607 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"128.650646\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- −4 -->\n",
       "      <g transform=\"translate(121.279552 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"160.55459\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- −2 -->\n",
       "      <g transform=\"translate(153.183497 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"192.458535\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(189.277285 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"224.36248\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(221.18123 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_7\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"256.266425\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(253.085175 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_8\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"288.17037\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(284.98912 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_9\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"320.074315\" xlink:href=\"#m628beee0b9\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(316.893065 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_10\">\n",
       "     <!-- x -->\n",
       "     <g transform=\"translate(188.701562 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 54.890625 54.6875 \n",
       "L 35.109375 28.078125 \n",
       "L 55.90625 0 \n",
       "L 45.3125 0 \n",
       "L 29.390625 21.484375 \n",
       "L 13.484375 0 \n",
       "L 2.875 0 \n",
       "L 24.125 28.609375 \n",
       "L 4.6875 54.6875 \n",
       "L 15.28125 54.6875 \n",
       "L 29.78125 35.203125 \n",
       "L 44.28125 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-120\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-120\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m10a2956d7e\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"52.160938\" xlink:href=\"#m10a2956d7e\" y=\"136.922742\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- −1.0 -->\n",
       "      <g transform=\"translate(20.878125 140.721961)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "        <path d=\"M 10.6875 12.40625 \n",
       "L 21 12.40625 \n",
       "L 21 0 \n",
       "L 10.6875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-46\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"147.412109\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"179.199219\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"52.160938\" xlink:href=\"#m10a2956d7e\" y=\"106.03637\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- −0.5 -->\n",
       "      <g transform=\"translate(20.878125 109.835589)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.796875 72.90625 \n",
       "L 49.515625 72.90625 \n",
       "L 49.515625 64.59375 \n",
       "L 19.828125 64.59375 \n",
       "L 19.828125 46.734375 \n",
       "Q 21.96875 47.46875 24.109375 47.828125 \n",
       "Q 26.265625 48.1875 28.421875 48.1875 \n",
       "Q 40.625 48.1875 47.75 41.5 \n",
       "Q 54.890625 34.8125 54.890625 23.390625 \n",
       "Q 54.890625 11.625 47.5625 5.09375 \n",
       "Q 40.234375 -1.421875 26.90625 -1.421875 \n",
       "Q 22.3125 -1.421875 17.546875 -0.640625 \n",
       "Q 12.796875 0.140625 7.71875 1.703125 \n",
       "L 7.71875 11.625 \n",
       "Q 12.109375 9.234375 16.796875 8.0625 \n",
       "Q 21.484375 6.890625 26.703125 6.890625 \n",
       "Q 35.15625 6.890625 40.078125 11.328125 \n",
       "Q 45.015625 15.765625 45.015625 23.390625 \n",
       "Q 45.015625 31 40.078125 35.4375 \n",
       "Q 35.15625 39.890625 26.703125 39.890625 \n",
       "Q 22.75 39.890625 18.8125 39.015625 \n",
       "Q 14.890625 38.140625 10.796875 36.28125 \n",
       "z\n",
       "\" id=\"DejaVuSans-53\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"147.412109\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"179.199219\" xlink:href=\"#DejaVuSans-53\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"52.160938\" xlink:href=\"#m10a2956d7e\" y=\"75.149998\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_13\">\n",
       "      <!-- 0.0 -->\n",
       "      <g transform=\"translate(29.257812 78.949217)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"52.160938\" xlink:href=\"#m10a2956d7e\" y=\"44.263626\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_14\">\n",
       "      <!-- 0.5 -->\n",
       "      <g transform=\"translate(29.257812 48.062845)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-53\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"52.160938\" xlink:href=\"#m10a2956d7e\" y=\"13.377254\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_15\">\n",
       "      <!-- 1.0 -->\n",
       "      <g transform=\"translate(29.257812 17.176473)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_16\">\n",
       "     <!-- tanh(x) -->\n",
       "     <g transform=\"translate(14.798437 93.372656)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 31 75.875 \n",
       "Q 24.46875 64.65625 21.28125 53.65625 \n",
       "Q 18.109375 42.671875 18.109375 31.390625 \n",
       "Q 18.109375 20.125 21.3125 9.0625 \n",
       "Q 24.515625 -2 31 -13.1875 \n",
       "L 23.1875 -13.1875 \n",
       "Q 15.875 -1.703125 12.234375 9.375 \n",
       "Q 8.59375 20.453125 8.59375 31.390625 \n",
       "Q 8.59375 42.28125 12.203125 53.3125 \n",
       "Q 15.828125 64.359375 23.1875 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-40\"/>\n",
       "       <path d=\"M 8.015625 75.875 \n",
       "L 15.828125 75.875 \n",
       "Q 23.140625 64.359375 26.78125 53.3125 \n",
       "Q 30.421875 42.28125 30.421875 31.390625 \n",
       "Q 30.421875 20.453125 26.78125 9.375 \n",
       "Q 23.140625 -1.703125 15.828125 -13.1875 \n",
       "L 8.015625 -13.1875 \n",
       "Q 14.5 -2 17.703125 9.0625 \n",
       "Q 20.90625 20.125 20.90625 31.390625 \n",
       "Q 20.90625 42.671875 17.703125 53.65625 \n",
       "Q 14.5 64.65625 8.015625 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-41\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"100.488281\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "      <use x=\"163.867188\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"227.246094\" xlink:href=\"#DejaVuSans-40\"/>\n",
       "      <use x=\"266.259766\" xlink:href=\"#DejaVuSans-120\"/>\n",
       "      <use x=\"325.439453\" xlink:href=\"#DejaVuSans-41\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_15\">\n",
       "    <path clip-path=\"url(#p2924c83314)\" d=\"M 64.842756 136.922727 \n",
       "L 135.031436 136.830572 \n",
       "L 144.602618 136.617262 \n",
       "L 150.983408 136.244933 \n",
       "L 155.768999 135.693242 \n",
       "L 158.959395 135.097478 \n",
       "L 162.149788 134.219408 \n",
       "L 163.744986 133.636804 \n",
       "L 165.340181 132.932783 \n",
       "L 166.935379 132.083992 \n",
       "L 168.530577 131.06349 \n",
       "L 170.125774 129.840599 \n",
       "L 171.720972 128.381 \n",
       "L 173.316168 126.647133 \n",
       "L 174.911365 124.599019 \n",
       "L 176.506563 122.19576 \n",
       "L 178.101761 119.397683 \n",
       "L 179.696957 116.16937 \n",
       "L 181.292155 112.483455 \n",
       "L 182.887352 108.325025 \n",
       "L 184.482549 103.696243 \n",
       "L 186.077746 98.620489 \n",
       "L 189.268141 87.342414 \n",
       "L 197.244127 57.154817 \n",
       "L 198.839324 51.679508 \n",
       "L 200.434522 46.603753 \n",
       "L 202.029719 41.974971 \n",
       "L 203.624916 37.816541 \n",
       "L 205.220114 34.130626 \n",
       "L 206.81531 30.902314 \n",
       "L 208.410508 28.104236 \n",
       "L 210.005705 25.700977 \n",
       "L 211.600903 23.652864 \n",
       "L 213.196099 21.918996 \n",
       "L 214.791296 20.459397 \n",
       "L 216.386494 19.236506 \n",
       "L 217.981692 18.216004 \n",
       "L 219.576889 17.367213 \n",
       "L 222.767283 16.080588 \n",
       "L 225.957676 15.202518 \n",
       "L 229.148071 14.606754 \n",
       "L 233.933662 14.055063 \n",
       "L 238.719257 13.750165 \n",
       "L 246.695243 13.514705 \n",
       "L 261.05202 13.399994 \n",
       "L 312.098329 13.377291 \n",
       "L 318.479119 13.377273 \n",
       "L 318.479119 13.377273 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 52.160938 143.1 \n",
       "L 52.160938 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 331.160937 143.1 \n",
       "L 331.160937 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 52.160938 143.1 \n",
       "L 331.160937 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 52.160938 7.2 \n",
       "L 331.160937 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p2924c83314\">\n",
       "   <rect height=\"135.9\" width=\"279\" x=\"52.160938\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 360x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "y = x.tanh()\n",
    "xyplot(x, y, 'tanh')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 329.98125 180.65625\" width=\"329.98125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:44:30.694210</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 329.98125 180.65625 \n",
       "L 329.98125 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 322.78125 143.1 \n",
       "L 322.78125 7.2 \n",
       "L 43.78125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m42d7650bb1\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"56.463068\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- −8 -->\n",
       "      <g transform=\"translate(49.091974 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"88.367013\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- −6 -->\n",
       "      <g transform=\"translate(80.995919 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"120.270958\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- −4 -->\n",
       "      <g transform=\"translate(112.899864 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"152.174903\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- −2 -->\n",
       "      <g transform=\"translate(144.803809 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use x=\"83.789062\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"184.078848\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(180.897598 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"215.982793\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(212.801543 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_7\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"247.886738\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(244.705488 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_8\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"279.790683\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(276.609433 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_9\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"311.694628\" xlink:href=\"#m42d7650bb1\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(308.513378 157.698438)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_10\">\n",
       "     <!-- x -->\n",
       "     <g transform=\"translate(180.321875 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 54.890625 54.6875 \n",
       "L 35.109375 28.078125 \n",
       "L 55.90625 0 \n",
       "L 45.3125 0 \n",
       "L 29.390625 21.484375 \n",
       "L 13.484375 0 \n",
       "L 2.875 0 \n",
       "L 24.125 28.609375 \n",
       "L 4.6875 54.6875 \n",
       "L 15.28125 54.6875 \n",
       "L 29.78125 35.203125 \n",
       "L 44.28125 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-120\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-120\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"mc690b47a11\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#mc690b47a11\" y=\"136.922786\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- 0.0 -->\n",
       "      <g transform=\"translate(20.878125 140.722005)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.6875 12.40625 \n",
       "L 21 12.40625 \n",
       "L 21 0 \n",
       "L 10.6875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-46\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#mc690b47a11\" y=\"112.213683\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- 0.2 -->\n",
       "      <g transform=\"translate(20.878125 116.012902)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#mc690b47a11\" y=\"87.504581\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_13\">\n",
       "      <!-- 0.4 -->\n",
       "      <g transform=\"translate(20.878125 91.3038)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#mc690b47a11\" y=\"62.795478\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_14\">\n",
       "      <!-- 0.6 -->\n",
       "      <g transform=\"translate(20.878125 66.594697)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-54\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#mc690b47a11\" y=\"38.086375\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_15\">\n",
       "      <!-- 0.8 -->\n",
       "      <g transform=\"translate(20.878125 41.885594)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"43.78125\" xlink:href=\"#mc690b47a11\" y=\"13.377273\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_16\">\n",
       "      <!-- 1.0 -->\n",
       "      <g transform=\"translate(20.878125 17.176491)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-46\"/>\n",
       "       <use x=\"95.410156\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_17\">\n",
       "     <!-- grad of sigmoid(x) -->\n",
       "     <g transform=\"translate(14.798438 121.1375)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 45.40625 27.984375 \n",
       "Q 45.40625 37.75 41.375 43.109375 \n",
       "Q 37.359375 48.484375 30.078125 48.484375 \n",
       "Q 22.859375 48.484375 18.828125 43.109375 \n",
       "Q 14.796875 37.75 14.796875 27.984375 \n",
       "Q 14.796875 18.265625 18.828125 12.890625 \n",
       "Q 22.859375 7.515625 30.078125 7.515625 \n",
       "Q 37.359375 7.515625 41.375 12.890625 \n",
       "Q 45.40625 18.265625 45.40625 27.984375 \n",
       "z\n",
       "M 54.390625 6.78125 \n",
       "Q 54.390625 -7.171875 48.1875 -13.984375 \n",
       "Q 42 -20.796875 29.203125 -20.796875 \n",
       "Q 24.46875 -20.796875 20.265625 -20.09375 \n",
       "Q 16.0625 -19.390625 12.109375 -17.921875 \n",
       "L 12.109375 -9.1875 \n",
       "Q 16.0625 -11.328125 19.921875 -12.34375 \n",
       "Q 23.78125 -13.375 27.78125 -13.375 \n",
       "Q 36.625 -13.375 41.015625 -8.765625 \n",
       "Q 45.40625 -4.15625 45.40625 5.171875 \n",
       "L 45.40625 9.625 \n",
       "Q 42.625 4.78125 38.28125 2.390625 \n",
       "Q 33.9375 0 27.875 0 \n",
       "Q 17.828125 0 11.671875 7.65625 \n",
       "Q 5.515625 15.328125 5.515625 27.984375 \n",
       "Q 5.515625 40.671875 11.671875 48.328125 \n",
       "Q 17.828125 56 27.875 56 \n",
       "Q 33.9375 56 38.28125 53.609375 \n",
       "Q 42.625 51.21875 45.40625 46.390625 \n",
       "L 45.40625 54.6875 \n",
       "L 54.390625 54.6875 \n",
       "z\n",
       "\" id=\"DejaVuSans-103\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 45.40625 46.390625 \n",
       "L 45.40625 75.984375 \n",
       "L 54.390625 75.984375 \n",
       "L 54.390625 0 \n",
       "L 45.40625 0 \n",
       "L 45.40625 8.203125 \n",
       "Q 42.578125 3.328125 38.25 0.953125 \n",
       "Q 33.9375 -1.421875 27.875 -1.421875 \n",
       "Q 17.96875 -1.421875 11.734375 6.484375 \n",
       "Q 5.515625 14.40625 5.515625 27.296875 \n",
       "Q 5.515625 40.1875 11.734375 48.09375 \n",
       "Q 17.96875 56 27.875 56 \n",
       "Q 33.9375 56 38.25 53.625 \n",
       "Q 42.578125 51.265625 45.40625 46.390625 \n",
       "z\n",
       "M 14.796875 27.296875 \n",
       "Q 14.796875 17.390625 18.875 11.75 \n",
       "Q 22.953125 6.109375 30.078125 6.109375 \n",
       "Q 37.203125 6.109375 41.296875 11.75 \n",
       "Q 45.40625 17.390625 45.40625 27.296875 \n",
       "Q 45.40625 37.203125 41.296875 42.84375 \n",
       "Q 37.203125 48.484375 30.078125 48.484375 \n",
       "Q 22.953125 48.484375 18.875 42.84375 \n",
       "Q 14.796875 37.203125 14.796875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-100\"/>\n",
       "       <path id=\"DejaVuSans-32\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 37.109375 75.984375 \n",
       "L 37.109375 68.5 \n",
       "L 28.515625 68.5 \n",
       "Q 23.6875 68.5 21.796875 66.546875 \n",
       "Q 19.921875 64.59375 19.921875 59.515625 \n",
       "L 19.921875 54.6875 \n",
       "L 34.71875 54.6875 \n",
       "L 34.71875 47.703125 \n",
       "L 19.921875 47.703125 \n",
       "L 19.921875 0 \n",
       "L 10.890625 0 \n",
       "L 10.890625 47.703125 \n",
       "L 2.296875 47.703125 \n",
       "L 2.296875 54.6875 \n",
       "L 10.890625 54.6875 \n",
       "L 10.890625 58.5 \n",
       "Q 10.890625 67.625 15.140625 71.796875 \n",
       "Q 19.390625 75.984375 28.609375 75.984375 \n",
       "z\n",
       "\" id=\"DejaVuSans-102\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 52 44.1875 \n",
       "Q 55.375 50.25 60.0625 53.125 \n",
       "Q 64.75 56 71.09375 56 \n",
       "Q 79.640625 56 84.28125 50.015625 \n",
       "Q 88.921875 44.046875 88.921875 33.015625 \n",
       "L 88.921875 0 \n",
       "L 79.890625 0 \n",
       "L 79.890625 32.71875 \n",
       "Q 79.890625 40.578125 77.09375 44.375 \n",
       "Q 74.3125 48.1875 68.609375 48.1875 \n",
       "Q 61.625 48.1875 57.5625 43.546875 \n",
       "Q 53.515625 38.921875 53.515625 30.90625 \n",
       "L 53.515625 0 \n",
       "L 44.484375 0 \n",
       "L 44.484375 32.71875 \n",
       "Q 44.484375 40.625 41.703125 44.40625 \n",
       "Q 38.921875 48.1875 33.109375 48.1875 \n",
       "Q 26.21875 48.1875 22.15625 43.53125 \n",
       "Q 18.109375 38.875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.1875 51.21875 25.484375 53.609375 \n",
       "Q 29.78125 56 35.6875 56 \n",
       "Q 41.65625 56 45.828125 52.96875 \n",
       "Q 50 49.953125 52 44.1875 \n",
       "z\n",
       "\" id=\"DejaVuSans-109\"/>\n",
       "       <path d=\"M 31 75.875 \n",
       "Q 24.46875 64.65625 21.28125 53.65625 \n",
       "Q 18.109375 42.671875 18.109375 31.390625 \n",
       "Q 18.109375 20.125 21.3125 9.0625 \n",
       "Q 24.515625 -2 31 -13.1875 \n",
       "L 23.1875 -13.1875 \n",
       "Q 15.875 -1.703125 12.234375 9.375 \n",
       "Q 8.59375 20.453125 8.59375 31.390625 \n",
       "Q 8.59375 42.28125 12.203125 53.3125 \n",
       "Q 15.828125 64.359375 23.1875 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-40\"/>\n",
       "       <path d=\"M 8.015625 75.875 \n",
       "L 15.828125 75.875 \n",
       "Q 23.140625 64.359375 26.78125 53.3125 \n",
       "Q 30.421875 42.28125 30.421875 31.390625 \n",
       "Q 30.421875 20.453125 26.78125 9.375 \n",
       "Q 23.140625 -1.703125 15.828125 -13.1875 \n",
       "L 8.015625 -13.1875 \n",
       "Q 14.5 -2 17.703125 9.0625 \n",
       "Q 20.90625 20.125 20.90625 31.390625 \n",
       "Q 20.90625 42.671875 17.703125 53.65625 \n",
       "Q 14.5 64.65625 8.015625 75.875 \n",
       "z\n",
       "\" id=\"DejaVuSans-41\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-103\"/>\n",
       "      <use x=\"63.476562\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"104.589844\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"165.869141\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "      <use x=\"229.345703\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "      <use x=\"261.132812\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"322.314453\" xlink:href=\"#DejaVuSans-102\"/>\n",
       "      <use x=\"357.519531\" xlink:href=\"#DejaVuSans-32\"/>\n",
       "      <use x=\"389.306641\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"441.40625\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"469.189453\" xlink:href=\"#DejaVuSans-103\"/>\n",
       "      <use x=\"532.666016\" xlink:href=\"#DejaVuSans-109\"/>\n",
       "      <use x=\"630.078125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"691.259766\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"719.042969\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "      <use x=\"782.519531\" xlink:href=\"#DejaVuSans-40\"/>\n",
       "      <use x=\"821.533203\" xlink:href=\"#DejaVuSans-120\"/>\n",
       "      <use x=\"880.712891\" xlink:href=\"#DejaVuSans-41\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_16\">\n",
       "    <path clip-path=\"url(#p4a8c416231)\" d=\"M 56.463068 136.922727 \n",
       "L 117.080567 136.811702 \n",
       "L 126.651749 136.554378 \n",
       "L 131.43734 136.252349 \n",
       "L 136.22293 135.703886 \n",
       "L 139.413326 135.108803 \n",
       "L 142.603721 134.226426 \n",
       "L 144.198917 133.637432 \n",
       "L 145.794112 132.92192 \n",
       "L 147.389312 132.053726 \n",
       "L 148.984508 131.001824 \n",
       "L 150.579707 129.729595 \n",
       "L 152.174903 128.194195 \n",
       "L 153.770101 126.346058 \n",
       "L 155.365298 124.128615 \n",
       "L 156.960494 121.478375 \n",
       "L 158.555692 118.325836 \n",
       "L 160.150889 114.597294 \n",
       "L 161.746087 110.218123 \n",
       "L 163.341284 105.118065 \n",
       "L 164.93648 99.238944 \n",
       "L 166.531678 92.545076 \n",
       "L 168.126875 85.036842 \n",
       "L 169.722073 76.766329 \n",
       "L 172.912467 58.503559 \n",
       "L 176.102862 39.760701 \n",
       "L 177.698059 31.212458 \n",
       "L 179.293256 23.861724 \n",
       "L 180.888453 18.190235 \n",
       "L 182.483651 14.604538 \n",
       "L 184.078848 13.377273 \n",
       "L 185.674045 14.604538 \n",
       "L 187.269242 18.190235 \n",
       "L 188.86444 23.861724 \n",
       "L 190.459637 31.212458 \n",
       "L 192.054834 39.760701 \n",
       "L 198.435623 76.766329 \n",
       "L 200.03082 85.036842 \n",
       "L 201.626018 92.545076 \n",
       "L 203.221216 99.238944 \n",
       "L 204.816411 105.118065 \n",
       "L 206.411609 110.218123 \n",
       "L 208.006807 114.597294 \n",
       "L 209.602004 118.325836 \n",
       "L 211.197202 121.478375 \n",
       "L 212.792398 124.128615 \n",
       "L 214.387595 126.346058 \n",
       "L 215.982793 128.194195 \n",
       "L 217.577989 129.729595 \n",
       "L 219.173188 131.001824 \n",
       "L 220.768384 132.053726 \n",
       "L 222.363583 132.92192 \n",
       "L 223.958779 133.637432 \n",
       "L 227.149174 134.7108 \n",
       "L 230.33957 135.435642 \n",
       "L 233.529961 135.923941 \n",
       "L 238.315556 136.373595 \n",
       "L 244.696342 136.67572 \n",
       "L 254.267528 136.848323 \n",
       "L 275.005088 136.917249 \n",
       "L 310.099432 136.922713 \n",
       "L 310.099432 136.922713 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 43.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 322.78125 143.1 \n",
       "L 322.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 43.78125 143.1 \n",
       "L 322.78125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 43.78125 7.2 \n",
       "L 322.78125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p4a8c416231\">\n",
       "   <rect height=\"135.9\" width=\"279\" x=\"43.78125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 360x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "x.grad.zero_()\n",
    "y.sum().backward()\n",
    "xyplot(x, x.grad, 'grad of sigmoid')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.9 多层感知机的从零开始实现"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "读取数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "metadata": {},
   "outputs": [],
   "source": [
    "batch_size = 256\n",
    "train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义模型参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_inputs, num_outputs, num_hiddens = 784, 10, 256\n",
    "W1 = torch.tensor(np.random.normal(0, 0.01, (num_inputs, num_hiddens)), dtype=torch.float)\n",
    "b1 = torch.zeros(num_hiddens, dtype=torch.float)\n",
    "W2 = torch.tensor(np.random.normal(0, 0.01, (num_hiddens, num_outputs)), dtype=torch.float)\n",
    "b2 = torch.zeros(num_outputs, dtype=torch.float)\n",
    "params = [W1, b1, W2, b2]\n",
    "for param in params:\n",
    "    param.requires_grad_(requires_grad=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义激活函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {},
   "outputs": [],
   "source": [
    "def relu(X):\n",
    "    return torch.max(input=X, other=torch.tensor(0.0))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {},
   "outputs": [],
   "source": [
    "def net(X):\n",
    "    X = X.view((-1, num_inputs))\n",
    "    H = relu(torch.matmul(X, W1) + b1)\n",
    "    return torch.matmul(H, W2) + b2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义损失函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {},
   "outputs": [],
   "source": [
    "loss = torch.nn.CrossEntropyLoss()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss 0.0030, train acc 0.712, test acc 0.791\n",
      "epoch 2, loss 0.0019, train acc 0.825, test acc 0.825\n",
      "epoch 3, loss 0.0017, train acc 0.845, test acc 0.823\n",
      "epoch 4, loss 0.0015, train acc 0.856, test acc 0.805\n",
      "epoch 5, loss 0.0015, train acc 0.862, test acc 0.855\n"
     ]
    }
   ],
   "source": [
    "num_epochs, lr = 5, 100.0\n",
    "d2l.train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size, params, lr)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.10 多层感知机的简洁实现"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_inputs, num_outputs, num_hiddens = 784, 10, 256\n",
    "net = nn.Sequential(\n",
    "    d2l.FlattenLayer(), \n",
    "    nn.Linear(num_inputs, num_hiddens), \n",
    "    nn.ReLU(), \n",
    "    nn.Linear(num_hiddens, num_outputs)\n",
    ")\n",
    "for params in net.parameters():\n",
    "    init.normal_(params, mean=0, std=0.01)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss 0.0031, train acc 0.701, test acc 0.754\n",
      "epoch 2, loss 0.0019, train acc 0.815, test acc 0.820\n",
      "epoch 3, loss 0.0017, train acc 0.842, test acc 0.781\n",
      "epoch 4, loss 0.0015, train acc 0.856, test acc 0.829\n",
      "epoch 5, loss 0.0014, train acc 0.864, test acc 0.834\n"
     ]
    }
   ],
   "source": [
    "batch_size = 256\n",
    "train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size)\n",
    "loss = torch.nn.CrossEntropyLoss()\n",
    "optimizer = torch.optim.SGD(net.parameters(), lr=0.5)\n",
    "num_epochs = 5\n",
    "d2l.train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size, None, None, optimizer)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.11 模型选择、欠拟合和过拟合"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "生成数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "metadata": {},
   "outputs": [],
   "source": [
    "n_train, n_test, true_w, true_b = 100, 100, [1.2, -3.4, 5.6], 5\n",
    "features = torch.randn((n_train+n_test, 1))\n",
    "poly_features = torch.cat((features, torch.pow(features, 2), torch.pow(features, 3)), 1)\n",
    "labels = (true_w[0]*poly_features[:, 0]+true_w[1]*poly_features[:, 1]+true_w[2]*poly_features[:, 2]+true_b)\n",
    "labels += torch.tensor(np.random.normal(0, 0.01, size=labels.size()), dtype=torch.float)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(tensor([[-0.7139],\n",
       "         [-0.8752]]),\n",
       " tensor([[-0.7139,  0.5097, -0.3638],\n",
       "         [-0.8752,  0.7660, -0.6704]]),\n",
       " tensor([ 0.3839, -2.4129]))"
      ]
     },
     "execution_count": 83,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "features[:2], poly_features[:2], labels[:2]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {},
   "outputs": [],
   "source": [
    "def semilogy(x_vals, y_vals, x_label, y_label, x2_vals=None, y2_vals=None, legend=None, figsize=(3.5, 2.5)):\n",
    "    d2l.set_figsize(figsize)\n",
    "    d2l.plt.xlabel(x_label)\n",
    "    d2l.plt.ylabel(y_label)\n",
    "    # 对数坐标\n",
    "    d2l.plt.semilogy(x_vals, y_vals)\n",
    "    # 绘制测试集上的曲线\n",
    "    if x2_vals and y2_vals:\n",
    "        d2l.plt.semilogy(x2_vals, y2_vals, linestyle=':')\n",
    "        d2l.plt.legend(legend)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_epochs, loss = 100, torch.nn.MSELoss()\n",
    "def fit_and_plot(train_features, test_features, train_labels, test_labels):\n",
    "    net = torch.nn.Linear(train_features.shape[-1], 1)\n",
    "    batch_size = min(10, train_labels.shape[0])\n",
    "    dataset = torch.utils.data.TensorDataset(train_features, train_labels)\n",
    "    train_iter = torch.utils.data.DataLoader(dataset, batch_size, shuffle=True)\n",
    "    optimizer = torch.optim.SGD(net.parameters(), lr=0.01)\n",
    "    train_ls, test_ls = [], []\n",
    "    for _ in range(num_epochs):\n",
    "        for X, y in train_iter:\n",
    "            l = loss(net(X), y.view(-1, 1))\n",
    "            optimizer.zero_grad()\n",
    "            l.backward()\n",
    "            optimizer.step()\n",
    "        train_labels = train_labels.view(-1, 1)\n",
    "        test_labels = test_labels.view(-1, 1)\n",
    "        train_ls.append(loss(net(train_features), train_labels).item())\n",
    "        test_ls.append(loss(net(test_features), test_labels).item())\n",
    "    print('final epoch: train loss', train_ls[-1], 'test loss', test_ls[-1])\n",
    "    semilogy(range(1, num_epochs+1), train_ls, 'epochs', 'loss', \n",
    "            range(1, num_epochs+1), test_ls, ['train', 'test'])\n",
    "    print('weight:', net.weight.data, '\\nbias:', net.bias.data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "final epoch: train loss 9.731649333843961e-05 test loss 9.888343629427254e-05\n",
      "weight: tensor([[ 1.2049, -3.3998,  5.5985]]) \n",
      "bias: tensor([4.9985])\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 254.544602 180.65625\" width=\"254.544602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:47:17.083718</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 254.544602 180.65625 \n",
       "L 254.544602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 51.378125 143.1 \n",
       "L 246.678125 143.1 \n",
       "L 246.678125 7.2 \n",
       "L 51.378125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m490742153e\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"58.462009\" xlink:href=\"#m490742153e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(55.280759 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"94.329778\" xlink:href=\"#m490742153e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(87.967278 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"130.197546\" xlink:href=\"#m490742153e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(123.835046 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"166.065315\" xlink:href=\"#m490742153e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(159.702815 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"201.933084\" xlink:href=\"#m490742153e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(195.570584 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"237.800852\" xlink:href=\"#m490742153e\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(228.257102 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(131.195312 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"mdad89329e0\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mdad89329e0\" y=\"113.03103\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{-3}}$ -->\n",
       "      <g transform=\"translate(20.878125 116.830248)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 40.578125 39.3125 \n",
       "Q 47.65625 37.796875 51.625 33 \n",
       "Q 55.609375 28.21875 55.609375 21.1875 \n",
       "Q 55.609375 10.40625 48.1875 4.484375 \n",
       "Q 40.765625 -1.421875 27.09375 -1.421875 \n",
       "Q 22.515625 -1.421875 17.65625 -0.515625 \n",
       "Q 12.796875 0.390625 7.625 2.203125 \n",
       "L 7.625 11.71875 \n",
       "Q 11.71875 9.328125 16.59375 8.109375 \n",
       "Q 21.484375 6.890625 26.8125 6.890625 \n",
       "Q 36.078125 6.890625 40.9375 10.546875 \n",
       "Q 45.796875 14.203125 45.796875 21.1875 \n",
       "Q 45.796875 27.640625 41.28125 31.265625 \n",
       "Q 36.765625 34.90625 28.71875 34.90625 \n",
       "L 20.21875 34.90625 \n",
       "L 20.21875 43.015625 \n",
       "L 29.109375 43.015625 \n",
       "Q 36.375 43.015625 40.234375 45.921875 \n",
       "Q 44.09375 48.828125 44.09375 54.296875 \n",
       "Q 44.09375 59.90625 40.109375 62.90625 \n",
       "Q 36.140625 65.921875 28.71875 65.921875 \n",
       "Q 24.65625 65.921875 20.015625 65.03125 \n",
       "Q 15.375 64.15625 9.8125 62.3125 \n",
       "L 9.8125 71.09375 \n",
       "Q 15.4375 72.65625 20.34375 73.4375 \n",
       "Q 25.25 74.21875 29.59375 74.21875 \n",
       "Q 40.828125 74.21875 47.359375 69.109375 \n",
       "Q 53.90625 64.015625 53.90625 55.328125 \n",
       "Q 53.90625 49.265625 50.4375 45.09375 \n",
       "Q 46.96875 40.921875 40.578125 39.3125 \n",
       "z\n",
       "\" id=\"DejaVuSans-51\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-51\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mdad89329e0\" y=\"66.002416\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- $\\mathdefault{10^{-1}}$ -->\n",
       "      <g transform=\"translate(20.878125 69.801635)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mdad89329e0\" y=\"18.973803\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- $\\mathdefault{10^{1}}$ -->\n",
       "      <g transform=\"translate(26.778125 22.773022)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_11\">\n",
       "     <!-- loss -->\n",
       "     <g transform=\"translate(14.798437 84.807812)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"27.783203\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"88.964844\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"141.064453\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_10\">\n",
       "    <path clip-path=\"url(#p3241e346eb)\" d=\"M 60.255398 13.377273 \n",
       "L 62.048786 14.855876 \n",
       "L 63.842175 19.846123 \n",
       "L 65.635563 20.019034 \n",
       "L 67.428951 23.672439 \n",
       "L 69.22234 26.961314 \n",
       "L 71.015728 28.906538 \n",
       "L 72.809117 31.641382 \n",
       "L 74.602505 33.249802 \n",
       "L 76.395894 35.548711 \n",
       "L 78.189282 37.766149 \n",
       "L 79.98267 40.730904 \n",
       "L 81.776059 36.854628 \n",
       "L 83.569447 43.740774 \n",
       "L 85.362836 47.25106 \n",
       "L 87.156224 48.584502 \n",
       "L 88.949613 51.594777 \n",
       "L 90.743001 53.159388 \n",
       "L 92.536389 49.564836 \n",
       "L 94.329778 57.828977 \n",
       "L 96.123166 60.104447 \n",
       "L 97.916555 62.085613 \n",
       "L 99.709943 63.897115 \n",
       "L 101.503332 66.14027 \n",
       "L 103.29672 67.970103 \n",
       "L 105.090108 69.848284 \n",
       "L 106.883497 71.863639 \n",
       "L 108.676885 73.656744 \n",
       "L 110.470274 75.386628 \n",
       "L 112.263662 77.263052 \n",
       "L 114.057051 78.613022 \n",
       "L 115.850439 80.733107 \n",
       "L 117.643827 82.317433 \n",
       "L 119.437216 84.086614 \n",
       "L 121.230604 85.657135 \n",
       "L 123.023993 86.855812 \n",
       "L 124.817381 88.751517 \n",
       "L 126.61077 89.957103 \n",
       "L 128.404158 91.748838 \n",
       "L 130.197546 92.934644 \n",
       "L 131.990935 94.221811 \n",
       "L 133.784323 96.175382 \n",
       "L 135.577712 97.806909 \n",
       "L 137.3711 99.096529 \n",
       "L 139.164489 100.394001 \n",
       "L 140.957877 101.836886 \n",
       "L 142.751265 103.40986 \n",
       "L 144.544654 104.497708 \n",
       "L 146.338042 105.453444 \n",
       "L 148.131431 107.465812 \n",
       "L 149.924819 108.622653 \n",
       "L 151.718208 110.032422 \n",
       "L 153.511596 110.864178 \n",
       "L 155.304985 112.79344 \n",
       "L 157.098373 113.888126 \n",
       "L 158.891761 114.532248 \n",
       "L 160.68515 116.503169 \n",
       "L 162.478538 117.432662 \n",
       "L 164.271927 117.550101 \n",
       "L 166.065315 117.097241 \n",
       "L 167.858704 121.199356 \n",
       "L 169.652092 121.699657 \n",
       "L 171.44548 123.152547 \n",
       "L 173.238869 124.206205 \n",
       "L 175.032257 125.27218 \n",
       "L 176.825646 126.23342 \n",
       "L 178.619034 126.470716 \n",
       "L 180.412423 127.230336 \n",
       "L 182.205811 128.657722 \n",
       "L 183.999199 128.434843 \n",
       "L 185.792588 130.057116 \n",
       "L 187.585976 129.819945 \n",
       "L 189.379365 130.493619 \n",
       "L 191.172753 131.926032 \n",
       "L 192.966142 131.63802 \n",
       "L 194.75953 132.580342 \n",
       "L 196.552918 133.305283 \n",
       "L 198.346307 133.625419 \n",
       "L 200.139695 133.807561 \n",
       "L 201.933084 133.951058 \n",
       "L 203.726472 134.587483 \n",
       "L 205.519861 135.133034 \n",
       "L 207.313249 135.380729 \n",
       "L 209.106637 135.623512 \n",
       "L 210.900026 135.467034 \n",
       "L 212.693414 135.457039 \n",
       "L 214.486803 135.735628 \n",
       "L 216.280191 136.162801 \n",
       "L 218.07358 135.794633 \n",
       "L 219.866968 136.42949 \n",
       "L 221.660356 136.576693 \n",
       "L 223.453745 136.477113 \n",
       "L 225.247133 136.52286 \n",
       "L 227.040522 136.619682 \n",
       "L 228.83391 136.65626 \n",
       "L 230.627299 136.845258 \n",
       "L 232.420687 136.70357 \n",
       "L 234.214075 135.546407 \n",
       "L 236.007464 136.922727 \n",
       "L 237.800852 136.823124 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"line2d_11\">\n",
       "    <path clip-path=\"url(#p3241e346eb)\" d=\"M 60.255398 14.45832 \n",
       "L 62.048786 15.897948 \n",
       "L 63.842175 20.530297 \n",
       "L 65.635563 20.795955 \n",
       "L 67.428951 25.084527 \n",
       "L 69.22234 27.20781 \n",
       "L 71.015728 29.592308 \n",
       "L 72.809117 31.592356 \n",
       "L 74.602505 33.197501 \n",
       "L 76.395894 35.372602 \n",
       "L 78.189282 37.561906 \n",
       "L 79.98267 40.257977 \n",
       "L 81.776059 39.025899 \n",
       "L 83.569447 44.299341 \n",
       "L 85.362836 46.447084 \n",
       "L 87.156224 48.527113 \n",
       "L 88.949613 50.416143 \n",
       "L 90.743001 52.474114 \n",
       "L 92.536389 51.64531 \n",
       "L 94.329778 56.452872 \n",
       "L 96.123166 58.479396 \n",
       "L 97.916555 60.433801 \n",
       "L 99.709943 62.324775 \n",
       "L 101.503332 64.278379 \n",
       "L 103.29672 66.075498 \n",
       "L 105.090108 67.986148 \n",
       "L 106.883497 69.739281 \n",
       "L 108.676885 71.420731 \n",
       "L 110.470274 73.313236 \n",
       "L 112.263662 74.975184 \n",
       "L 114.057051 76.416027 \n",
       "L 115.850439 78.435546 \n",
       "L 117.643827 80.111354 \n",
       "L 119.437216 81.740008 \n",
       "L 121.230604 83.507107 \n",
       "L 123.023993 85.161905 \n",
       "L 124.817381 86.380428 \n",
       "L 126.61077 88.367007 \n",
       "L 128.404158 89.790293 \n",
       "L 130.197546 91.429664 \n",
       "L 131.990935 92.022508 \n",
       "L 133.784323 93.887326 \n",
       "L 135.577712 95.773464 \n",
       "L 137.3711 97.384627 \n",
       "L 139.164489 98.175394 \n",
       "L 140.957877 99.667905 \n",
       "L 142.751265 101.388625 \n",
       "L 144.544654 102.436514 \n",
       "L 146.338042 103.60883 \n",
       "L 148.131431 105.955223 \n",
       "L 149.924819 106.554804 \n",
       "L 151.718208 107.963545 \n",
       "L 153.511596 109.007392 \n",
       "L 155.304985 110.903813 \n",
       "L 157.098373 112.860869 \n",
       "L 158.891761 114.229889 \n",
       "L 160.68515 114.92337 \n",
       "L 162.478538 115.86474 \n",
       "L 164.271927 117.908478 \n",
       "L 166.065315 116.798956 \n",
       "L 167.858704 120.153036 \n",
       "L 169.652092 121.401786 \n",
       "L 171.44548 121.965405 \n",
       "L 173.238869 123.492324 \n",
       "L 175.032257 124.089559 \n",
       "L 176.825646 125.187341 \n",
       "L 178.619034 126.367004 \n",
       "L 180.412423 127.249391 \n",
       "L 182.205811 127.868053 \n",
       "L 183.999199 127.9766 \n",
       "L 185.792588 129.547487 \n",
       "L 187.585976 129.175907 \n",
       "L 189.379365 130.889038 \n",
       "L 191.172753 131.336137 \n",
       "L 192.966142 131.346885 \n",
       "L 194.75953 132.640502 \n",
       "L 196.552918 133.013663 \n",
       "L 198.346307 133.571614 \n",
       "L 200.139695 133.929829 \n",
       "L 201.933084 133.785909 \n",
       "L 203.726472 134.400719 \n",
       "L 205.519861 134.963347 \n",
       "L 207.313249 135.049156 \n",
       "L 209.106637 135.414793 \n",
       "L 210.900026 135.499938 \n",
       "L 212.693414 135.531344 \n",
       "L 214.486803 135.765306 \n",
       "L 216.280191 135.976246 \n",
       "L 218.07358 135.926365 \n",
       "L 219.866968 136.199936 \n",
       "L 221.660356 136.322481 \n",
       "L 223.453745 136.334985 \n",
       "L 225.247133 136.540176 \n",
       "L 227.040522 136.516774 \n",
       "L 228.83391 136.503663 \n",
       "L 230.627299 136.757187 \n",
       "L 232.420687 136.7934 \n",
       "L 234.214075 136.047173 \n",
       "L 236.007464 136.642907 \n",
       "L 237.800852 136.660003 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 51.378125 143.1 \n",
       "L 51.378125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 246.678125 143.1 \n",
       "L 246.678125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 51.378125 143.1 \n",
       "L 246.678125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 51.378125 7.2 \n",
       "L 246.678125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"legend_1\">\n",
       "    <g id=\"patch_7\">\n",
       "     <path d=\"M 184.403125 44.55625 \n",
       "L 239.678125 44.55625 \n",
       "Q 241.678125 44.55625 241.678125 42.55625 \n",
       "L 241.678125 14.2 \n",
       "Q 241.678125 12.2 239.678125 12.2 \n",
       "L 184.403125 12.2 \n",
       "Q 182.403125 12.2 182.403125 14.2 \n",
       "L 182.403125 42.55625 \n",
       "Q 182.403125 44.55625 184.403125 44.55625 \n",
       "z\n",
       "\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_12\">\n",
       "     <path d=\"M 186.403125 20.298437 \n",
       "L 206.403125 20.298437 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_13\"/>\n",
       "    <g id=\"text_12\">\n",
       "     <!-- train -->\n",
       "     <g transform=\"translate(214.403125 23.798437)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"line2d_14\">\n",
       "     <path d=\"M 186.403125 34.976562 \n",
       "L 206.403125 34.976562 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_15\"/>\n",
       "    <g id=\"text_13\">\n",
       "     <!-- test -->\n",
       "     <g transform=\"translate(214.403125 38.476562)scale(0.1 -0.1)\">\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"100.732422\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"152.832031\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p3241e346eb\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"51.378125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fit_and_plot(poly_features[:n_train, :], poly_features[n_train:, :], labels[:n_train], labels[n_train:])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "final epoch: train loss 166.64437866210938 test loss 103.03386688232422\n",
      "weight: tensor([[18.4239]]) \n",
      "bias: tensor([1.7832])\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 265.644602 180.65625\" width=\"265.644602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:47:18.386916</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 265.644602 180.65625 \n",
       "L 265.644602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 62.478125 143.1 \n",
       "L 257.778125 143.1 \n",
       "L 257.778125 7.2 \n",
       "L 62.478125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m3bd81e0098\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"69.562009\" xlink:href=\"#m3bd81e0098\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(66.380759 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"105.429778\" xlink:href=\"#m3bd81e0098\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(99.067278 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"141.297546\" xlink:href=\"#m3bd81e0098\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(134.935046 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"177.165315\" xlink:href=\"#m3bd81e0098\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(170.802815 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"213.033084\" xlink:href=\"#m3bd81e0098\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(206.670584 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"248.900852\" xlink:href=\"#m3bd81e0098\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(239.357102 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(142.295313 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m93d1addff8\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"62.478125\" xlink:href=\"#m93d1addff8\" y=\"129.756896\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{2}}$ -->\n",
       "      <g transform=\"translate(37.878125 133.556115)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -2 0 \n",
       "\" id=\"m296c0c2e77\" style=\"stroke:#000000;stroke-width:0.6;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"62.478125\" xlink:href=\"#m296c0c2e77\" y=\"138.284756\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"62.478125\" xlink:href=\"#m296c0c2e77\" y=\"73.653696\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- $\\mathdefault{2\\times10^{2}}$ -->\n",
       "      <g transform=\"translate(20.878125 77.452914)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 70.125 53.71875 \n",
       "L 47.796875 31.296875 \n",
       "L 70.125 8.984375 \n",
       "L 64.3125 3.078125 \n",
       "L 41.890625 25.484375 \n",
       "L 19.484375 3.078125 \n",
       "L 13.71875 8.984375 \n",
       "L 35.984375 31.296875 \n",
       "L 13.71875 53.71875 \n",
       "L 19.484375 59.625 \n",
       "L 41.890625 37.203125 \n",
       "L 64.3125 59.625 \n",
       "z\n",
       "\" id=\"DejaVuSans-215\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use transform=\"translate(83.105469 0.765625)\" xlink:href=\"#DejaVuSans-215\"/>\n",
       "       <use transform=\"translate(186.376953 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(250 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(314.580078 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"62.478125\" xlink:href=\"#m296c0c2e77\" y=\"40.835427\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- $\\mathdefault{3\\times10^{2}}$ -->\n",
       "      <g transform=\"translate(20.878125 44.634646)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 40.578125 39.3125 \n",
       "Q 47.65625 37.796875 51.625 33 \n",
       "Q 55.609375 28.21875 55.609375 21.1875 \n",
       "Q 55.609375 10.40625 48.1875 4.484375 \n",
       "Q 40.765625 -1.421875 27.09375 -1.421875 \n",
       "Q 22.515625 -1.421875 17.65625 -0.515625 \n",
       "Q 12.796875 0.390625 7.625 2.203125 \n",
       "L 7.625 11.71875 \n",
       "Q 11.71875 9.328125 16.59375 8.109375 \n",
       "Q 21.484375 6.890625 26.8125 6.890625 \n",
       "Q 36.078125 6.890625 40.9375 10.546875 \n",
       "Q 45.796875 14.203125 45.796875 21.1875 \n",
       "Q 45.796875 27.640625 41.28125 31.265625 \n",
       "Q 36.765625 34.90625 28.71875 34.90625 \n",
       "L 20.21875 34.90625 \n",
       "L 20.21875 43.015625 \n",
       "L 29.109375 43.015625 \n",
       "Q 36.375 43.015625 40.234375 45.921875 \n",
       "Q 44.09375 48.828125 44.09375 54.296875 \n",
       "Q 44.09375 59.90625 40.109375 62.90625 \n",
       "Q 36.140625 65.921875 28.71875 65.921875 \n",
       "Q 24.65625 65.921875 20.015625 65.03125 \n",
       "Q 15.375 64.15625 9.8125 62.3125 \n",
       "L 9.8125 71.09375 \n",
       "Q 15.4375 72.65625 20.34375 73.4375 \n",
       "Q 25.25 74.21875 29.59375 74.21875 \n",
       "Q 40.828125 74.21875 47.359375 69.109375 \n",
       "Q 53.90625 64.015625 53.90625 55.328125 \n",
       "Q 53.90625 49.265625 50.4375 45.09375 \n",
       "Q 46.96875 40.921875 40.578125 39.3125 \n",
       "z\n",
       "\" id=\"DejaVuSans-51\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-51\"/>\n",
       "       <use transform=\"translate(83.105469 0.765625)\" xlink:href=\"#DejaVuSans-215\"/>\n",
       "       <use transform=\"translate(186.376953 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(250 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(314.580078 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"62.478125\" xlink:href=\"#m296c0c2e77\" y=\"17.550495\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- $\\mathdefault{4\\times10^{2}}$ -->\n",
       "      <g transform=\"translate(20.878125 21.349714)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use transform=\"translate(83.105469 0.765625)\" xlink:href=\"#DejaVuSans-215\"/>\n",
       "       <use transform=\"translate(186.376953 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(250 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(314.580078 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_12\">\n",
       "     <!-- loss -->\n",
       "     <g transform=\"translate(14.798437 84.807812)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"27.783203\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"88.964844\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"141.064453\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_12\">\n",
       "    <path clip-path=\"url(#p4642416f07)\" d=\"M 71.355398 13.377273 \n",
       "L 73.148786 32.596472 \n",
       "L 74.942175 47.909806 \n",
       "L 76.735563 59.893562 \n",
       "L 78.528951 68.618326 \n",
       "L 80.32234 75.126974 \n",
       "L 82.115728 79.472255 \n",
       "L 83.909117 82.423505 \n",
       "L 85.702505 84.347558 \n",
       "L 87.495894 85.739123 \n",
       "L 89.289282 86.656868 \n",
       "L 91.08267 87.213686 \n",
       "L 92.876059 87.718724 \n",
       "L 94.669447 87.937944 \n",
       "L 96.462836 88.078608 \n",
       "L 98.256224 88.21679 \n",
       "L 100.049613 88.273407 \n",
       "L 101.843001 88.319744 \n",
       "L 103.636389 88.362472 \n",
       "L 105.429778 88.382093 \n",
       "L 107.223166 88.396198 \n",
       "L 109.016555 88.403037 \n",
       "L 110.809943 88.41061 \n",
       "L 112.603332 88.414656 \n",
       "L 114.39672 88.416442 \n",
       "L 116.190108 88.41284 \n",
       "L 117.983497 88.414604 \n",
       "L 119.776885 88.418235 \n",
       "L 121.570274 88.419228 \n",
       "L 123.363662 88.422422 \n",
       "L 125.157051 88.422734 \n",
       "L 126.950439 88.422912 \n",
       "L 128.743827 88.422778 \n",
       "L 130.537216 88.422682 \n",
       "L 132.330604 88.422578 \n",
       "L 134.123993 88.422793 \n",
       "L 135.917381 88.421437 \n",
       "L 137.71077 88.421274 \n",
       "L 139.504158 88.421125 \n",
       "L 141.297546 88.422667 \n",
       "L 143.090935 88.421896 \n",
       "L 144.884323 88.422652 \n",
       "L 146.677712 88.420243 \n",
       "L 148.4711 88.421192 \n",
       "L 150.264489 88.42057 \n",
       "L 152.057877 88.420043 \n",
       "L 153.851265 88.420799 \n",
       "L 155.644654 88.422541 \n",
       "L 157.438042 88.421155 \n",
       "L 159.231431 88.42286 \n",
       "L 161.024819 88.422756 \n",
       "L 162.818208 88.422341 \n",
       "L 164.611596 88.422178 \n",
       "L 166.404985 88.421666 \n",
       "L 168.198373 88.422282 \n",
       "L 169.991761 88.422422 \n",
       "L 171.78515 88.420584 \n",
       "L 173.578538 88.41971 \n",
       "L 175.371927 88.418732 \n",
       "L 177.165315 88.42263 \n",
       "L 178.958704 88.422608 \n",
       "L 180.752092 88.422623 \n",
       "L 182.54548 88.422245 \n",
       "L 184.338869 88.422393 \n",
       "L 186.132257 88.422926 \n",
       "L 187.925646 88.422519 \n",
       "L 189.719034 88.420392 \n",
       "L 191.512423 88.422415 \n",
       "L 193.305811 88.422919 \n",
       "L 195.099199 88.422926 \n",
       "L 196.892588 88.423015 \n",
       "L 198.685976 88.422808 \n",
       "L 200.479365 88.423015 \n",
       "L 202.272753 88.422467 \n",
       "L 204.066142 88.422978 \n",
       "L 205.85953 88.422697 \n",
       "L 207.652918 88.419517 \n",
       "L 209.446307 88.415871 \n",
       "L 211.239695 88.414908 \n",
       "L 213.033084 88.419213 \n",
       "L 214.826472 88.418205 \n",
       "L 216.619861 88.419013 \n",
       "L 218.413249 88.417753 \n",
       "L 220.206637 88.418339 \n",
       "L 222.000026 88.417042 \n",
       "L 223.793414 88.41765 \n",
       "L 225.586803 88.422393 \n",
       "L 227.380191 88.422986 \n",
       "L 229.17358 88.422912 \n",
       "L 230.966968 88.421148 \n",
       "L 232.760356 88.422585 \n",
       "L 234.553745 88.422704 \n",
       "L 236.347133 88.421511 \n",
       "L 238.140522 88.422986 \n",
       "L 239.93391 88.421066 \n",
       "L 241.727299 88.423008 \n",
       "L 243.520687 88.422993 \n",
       "L 245.314075 88.421666 \n",
       "L 247.107464 88.420362 \n",
       "L 248.900852 88.421592 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"line2d_13\">\n",
       "    <path clip-path=\"url(#p4642416f07)\" d=\"M 71.355398 70.155024 \n",
       "L 73.148786 93.558184 \n",
       "L 74.942175 111.245688 \n",
       "L 76.735563 123.62613 \n",
       "L 78.528951 131.090373 \n",
       "L 80.32234 135.16342 \n",
       "L 82.115728 136.732063 \n",
       "L 83.909117 136.922727 \n",
       "L 85.702505 136.379362 \n",
       "L 87.495894 135.485727 \n",
       "L 89.289282 134.502514 \n",
       "L 91.08267 133.622224 \n",
       "L 92.876059 132.463719 \n",
       "L 94.669447 131.747532 \n",
       "L 96.462836 131.123671 \n",
       "L 98.256224 130.371602 \n",
       "L 100.049613 129.862852 \n",
       "L 101.843001 129.436832 \n",
       "L 103.636389 128.937109 \n",
       "L 105.429778 128.667091 \n",
       "L 107.223166 128.550476 \n",
       "L 109.016555 128.385814 \n",
       "L 110.809943 128.17244 \n",
       "L 112.603332 128.202626 \n",
       "L 114.39672 128.105941 \n",
       "L 116.190108 128.253394 \n",
       "L 117.983497 128.269598 \n",
       "L 119.776885 128.095952 \n",
       "L 121.570274 128.084646 \n",
       "L 123.363662 127.797836 \n",
       "L 125.157051 127.757293 \n",
       "L 126.950439 127.667258 \n",
       "L 128.743827 127.743606 \n",
       "L 130.537216 127.504916 \n",
       "L 132.330604 127.653515 \n",
       "L 134.123993 127.544431 \n",
       "L 135.917381 127.910962 \n",
       "L 137.71077 127.931149 \n",
       "L 139.504158 127.912869 \n",
       "L 141.297546 127.76909 \n",
       "L 143.090935 127.893158 \n",
       "L 144.884323 127.774127 \n",
       "L 146.677712 128.019211 \n",
       "L 148.4711 127.883062 \n",
       "L 150.264489 127.866109 \n",
       "L 152.057877 127.928619 \n",
       "L 153.851265 127.787566 \n",
       "L 155.644654 127.526852 \n",
       "L 157.438042 127.822209 \n",
       "L 159.231431 127.627953 \n",
       "L 161.024819 127.553956 \n",
       "L 162.818208 127.80393 \n",
       "L 164.611596 127.831567 \n",
       "L 166.404985 127.898148 \n",
       "L 168.198373 127.841264 \n",
       "L 169.991761 127.820388 \n",
       "L 171.78515 128.008792 \n",
       "L 173.578538 128.054679 \n",
       "L 175.371927 128.039249 \n",
       "L 177.165315 127.609249 \n",
       "L 178.958704 127.455323 \n",
       "L 180.752092 127.506537 \n",
       "L 182.54548 127.359065 \n",
       "L 184.338869 127.404843 \n",
       "L 186.132257 127.567232 \n",
       "L 187.925646 127.681305 \n",
       "L 189.719034 127.37316 \n",
       "L 191.512423 127.667367 \n",
       "L 193.305811 127.699617 \n",
       "L 195.099199 127.682033 \n",
       "L 196.892588 127.560783 \n",
       "L 198.685976 127.503054 \n",
       "L 200.479365 127.620622 \n",
       "L 202.272753 127.411448 \n",
       "L 204.066142 127.669082 \n",
       "L 205.85953 127.625926 \n",
       "L 207.652918 127.162005 \n",
       "L 209.446307 126.993629 \n",
       "L 211.239695 126.919612 \n",
       "L 213.033084 127.136807 \n",
       "L 214.826472 127.188759 \n",
       "L 216.619861 127.146601 \n",
       "L 218.413249 127.075557 \n",
       "L 220.206637 127.085594 \n",
       "L 222.000026 127.093451 \n",
       "L 223.793414 127.041399 \n",
       "L 225.586803 127.380614 \n",
       "L 227.380191 127.579602 \n",
       "L 229.17358 127.500243 \n",
       "L 230.966968 127.467887 \n",
       "L 232.760356 127.662348 \n",
       "L 234.553745 127.624711 \n",
       "L 236.347133 127.332595 \n",
       "L 238.140522 127.539853 \n",
       "L 239.93391 127.805148 \n",
       "L 241.727299 127.599099 \n",
       "L 243.520687 127.659243 \n",
       "L 245.314075 127.311083 \n",
       "L 247.107464 127.190835 \n",
       "L 248.900852 127.337804 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 62.478125 143.1 \n",
       "L 62.478125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 257.778125 143.1 \n",
       "L 257.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 62.478125 143.1 \n",
       "L 257.778125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 62.478125 7.2 \n",
       "L 257.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"legend_1\">\n",
       "    <g id=\"patch_7\">\n",
       "     <path d=\"M 195.503125 44.55625 \n",
       "L 250.778125 44.55625 \n",
       "Q 252.778125 44.55625 252.778125 42.55625 \n",
       "L 252.778125 14.2 \n",
       "Q 252.778125 12.2 250.778125 12.2 \n",
       "L 195.503125 12.2 \n",
       "Q 193.503125 12.2 193.503125 14.2 \n",
       "L 193.503125 42.55625 \n",
       "Q 193.503125 44.55625 195.503125 44.55625 \n",
       "z\n",
       "\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_14\">\n",
       "     <path d=\"M 197.503125 20.298437 \n",
       "L 217.503125 20.298437 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_15\"/>\n",
       "    <g id=\"text_13\">\n",
       "     <!-- train -->\n",
       "     <g transform=\"translate(225.503125 23.798437)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"line2d_16\">\n",
       "     <path d=\"M 197.503125 34.976562 \n",
       "L 217.503125 34.976562 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_17\"/>\n",
       "    <g id=\"text_14\">\n",
       "     <!-- test -->\n",
       "     <g transform=\"translate(225.503125 38.476562)scale(0.1 -0.1)\">\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"100.732422\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"152.832031\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p4642416f07\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"62.478125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fit_and_plot(features[:n_train, :], features[n_train:, :], labels[:n_train], labels[n_train:])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "final epoch: train loss 1.757625937461853 test loss 266.667236328125\n",
      "weight: tensor([[-0.0885, -0.5889,  0.0629]]) \n",
      "bias: tensor([-0.7957])\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 248.644602 180.65625\" width=\"248.644602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:47:19.275413</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 248.644602 180.65625 \n",
       "L 248.644602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 240.778125 143.1 \n",
       "L 240.778125 7.2 \n",
       "L 45.478125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"md924c40b0a\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"52.562009\" xlink:href=\"#md924c40b0a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(49.380759 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"88.429778\" xlink:href=\"#md924c40b0a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(82.067278 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"124.297546\" xlink:href=\"#md924c40b0a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(117.935046 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"160.165315\" xlink:href=\"#md924c40b0a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(153.802815 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"196.033084\" xlink:href=\"#md924c40b0a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(189.670584 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"231.900852\" xlink:href=\"#md924c40b0a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(222.357102 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(125.295312 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"mf1d6614772\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"45.478125\" xlink:href=\"#mf1d6614772\" y=\"96.000701\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{1}}$ -->\n",
       "      <g transform=\"translate(20.878125 99.79992)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"45.478125\" xlink:href=\"#mf1d6614772\" y=\"41.804621\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- $\\mathdefault{10^{2}}$ -->\n",
       "      <g transform=\"translate(20.878125 45.60384)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -2 0 \n",
       "\" id=\"m208df024a6\" style=\"stroke:#000000;stroke-width:0.6;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"133.882135\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"124.338679\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"117.56749\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"112.315347\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_7\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"108.024034\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_8\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"104.39578\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_9\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"101.252844\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_10\">\n",
       "     <g id=\"line2d_16\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"98.480578\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_11\">\n",
       "     <g id=\"line2d_17\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"79.686055\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_12\">\n",
       "     <g id=\"line2d_18\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"70.1426\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_13\">\n",
       "     <g id=\"line2d_19\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"63.37141\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_14\">\n",
       "     <g id=\"line2d_20\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"58.119267\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_15\">\n",
       "     <g id=\"line2d_21\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"53.827954\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_16\">\n",
       "     <g id=\"line2d_22\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"50.1997\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_17\">\n",
       "     <g id=\"line2d_23\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"47.056764\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_18\">\n",
       "     <g id=\"line2d_24\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"44.284498\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_19\">\n",
       "     <g id=\"line2d_25\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"25.489976\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_20\">\n",
       "     <g id=\"line2d_26\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"15.94652\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_21\">\n",
       "     <g id=\"line2d_27\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m208df024a6\" y=\"9.17533\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_10\">\n",
       "     <!-- loss -->\n",
       "     <g transform=\"translate(14.798437 84.807812)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"27.783203\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"88.964844\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"141.064453\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_28\">\n",
       "    <path clip-path=\"url(#p19da009c21)\" d=\"M 54.355398 120.747722 \n",
       "L 56.148786 121.736413 \n",
       "L 57.942175 122.673947 \n",
       "L 59.735563 123.561168 \n",
       "L 61.528951 124.399116 \n",
       "L 63.32234 125.189007 \n",
       "L 65.115728 125.932229 \n",
       "L 66.909117 126.630301 \n",
       "L 68.702505 127.284858 \n",
       "L 70.495894 127.897642 \n",
       "L 72.289282 128.470451 \n",
       "L 74.08267 129.005144 \n",
       "L 75.876059 129.503609 \n",
       "L 77.669447 129.967759 \n",
       "L 79.462836 130.399479 \n",
       "L 81.256224 130.800643 \n",
       "L 83.049613 131.173101 \n",
       "L 84.843001 131.518651 \n",
       "L 86.636389 131.839025 \n",
       "L 88.429778 132.135909 \n",
       "L 90.223166 132.410913 \n",
       "L 92.016555 132.665577 \n",
       "L 93.809943 132.901361 \n",
       "L 95.603332 133.119656 \n",
       "L 97.39672 133.321763 \n",
       "L 99.190108 133.50892 \n",
       "L 100.983497 133.682276 \n",
       "L 102.776885 133.842917 \n",
       "L 104.570274 133.991852 \n",
       "L 106.363662 134.130011 \n",
       "L 108.157051 134.258279 \n",
       "L 109.950439 134.377459 \n",
       "L 111.743827 134.488303 \n",
       "L 113.537216 134.591505 \n",
       "L 115.330604 134.687708 \n",
       "L 117.123993 134.777498 \n",
       "L 118.917381 134.86142 \n",
       "L 120.71077 134.939975 \n",
       "L 122.504158 135.013625 \n",
       "L 124.297546 135.082792 \n",
       "L 126.090935 135.14786 \n",
       "L 127.884323 135.209189 \n",
       "L 129.677712 135.267102 \n",
       "L 131.4711 135.321899 \n",
       "L 133.264489 135.37385 \n",
       "L 135.057877 135.423211 \n",
       "L 136.851265 135.470202 \n",
       "L 138.644654 135.515037 \n",
       "L 140.438042 135.557905 \n",
       "L 142.231431 135.598984 \n",
       "L 144.024819 135.638425 \n",
       "L 145.818208 135.676378 \n",
       "L 147.611596 135.712977 \n",
       "L 149.404985 135.748339 \n",
       "L 151.198373 135.782575 \n",
       "L 152.991761 135.815786 \n",
       "L 154.78515 135.848064 \n",
       "L 156.578538 135.879492 \n",
       "L 158.371927 135.910143 \n",
       "L 160.165315 135.94009 \n",
       "L 161.958704 135.969394 \n",
       "L 163.752092 135.998117 \n",
       "L 165.54548 136.026307 \n",
       "L 167.338869 136.054012 \n",
       "L 169.132257 136.081275 \n",
       "L 170.925646 136.108138 \n",
       "L 172.719034 136.134633 \n",
       "L 174.512423 136.160799 \n",
       "L 176.305811 136.186657 \n",
       "L 178.099199 136.212245 \n",
       "L 179.892588 136.23758 \n",
       "L 181.685976 136.26269 \n",
       "L 183.479365 136.287589 \n",
       "L 185.272753 136.312297 \n",
       "L 187.066142 136.336836 \n",
       "L 188.85953 136.361219 \n",
       "L 190.652918 136.385459 \n",
       "L 192.446307 136.409568 \n",
       "L 194.239695 136.433559 \n",
       "L 196.033084 136.457443 \n",
       "L 197.826472 136.48123 \n",
       "L 199.619861 136.504929 \n",
       "L 201.413249 136.528544 \n",
       "L 203.206637 136.552089 \n",
       "L 205.000026 136.575566 \n",
       "L 206.793414 136.598979 \n",
       "L 208.586803 136.622338 \n",
       "L 210.380191 136.64565 \n",
       "L 212.17358 136.66891 \n",
       "L 213.966968 136.692132 \n",
       "L 215.760356 136.715316 \n",
       "L 217.553745 136.738465 \n",
       "L 219.347133 136.761583 \n",
       "L 221.140522 136.784669 \n",
       "L 222.93391 136.807731 \n",
       "L 224.727299 136.830771 \n",
       "L 226.520687 136.853787 \n",
       "L 228.314075 136.876787 \n",
       "L 230.107464 136.899763 \n",
       "L 231.900852 136.922727 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"line2d_29\">\n",
       "    <path clip-path=\"url(#p19da009c21)\" d=\"M 54.355398 13.377273 \n",
       "L 56.148786 13.545276 \n",
       "L 57.942175 13.706651 \n",
       "L 59.735563 13.861697 \n",
       "L 61.528951 14.010689 \n",
       "L 63.32234 14.153902 \n",
       "L 65.115728 14.29159 \n",
       "L 66.909117 14.424005 \n",
       "L 68.702505 14.551379 \n",
       "L 70.495894 14.67394 \n",
       "L 72.289282 14.791907 \n",
       "L 74.08267 14.905486 \n",
       "L 75.876059 15.014879 \n",
       "L 77.669447 15.120268 \n",
       "L 79.462836 15.221839 \n",
       "L 81.256224 15.319768 \n",
       "L 83.049613 15.414216 \n",
       "L 84.843001 15.505345 \n",
       "L 86.636389 15.593305 \n",
       "L 88.429778 15.678239 \n",
       "L 90.223166 15.760287 \n",
       "L 92.016555 15.839582 \n",
       "L 93.809943 15.916244 \n",
       "L 95.603332 15.990401 \n",
       "L 97.39672 16.062164 \n",
       "L 99.190108 16.131642 \n",
       "L 100.983497 16.198941 \n",
       "L 102.776885 16.264162 \n",
       "L 104.570274 16.327398 \n",
       "L 106.363662 16.388741 \n",
       "L 108.157051 16.448279 \n",
       "L 109.950439 16.506091 \n",
       "L 111.743827 16.562262 \n",
       "L 113.537216 16.616864 \n",
       "L 115.330604 16.669967 \n",
       "L 117.123993 16.721647 \n",
       "L 118.917381 16.771962 \n",
       "L 120.71077 16.820979 \n",
       "L 122.504158 16.868755 \n",
       "L 124.297546 16.915352 \n",
       "L 126.090935 16.960818 \n",
       "L 127.884323 17.005208 \n",
       "L 129.677712 17.048573 \n",
       "L 131.4711 17.090957 \n",
       "L 133.264489 17.13241 \n",
       "L 135.057877 17.172968 \n",
       "L 136.851265 17.212678 \n",
       "L 138.644654 17.251575 \n",
       "L 140.438042 17.2897 \n",
       "L 142.231431 17.327087 \n",
       "L 144.024819 17.36377 \n",
       "L 145.818208 17.39978 \n",
       "L 147.611596 17.435151 \n",
       "L 149.404985 17.469909 \n",
       "L 151.198373 17.504086 \n",
       "L 152.991761 17.537706 \n",
       "L 154.78515 17.570794 \n",
       "L 156.578538 17.603376 \n",
       "L 158.371927 17.635479 \n",
       "L 160.165315 17.667118 \n",
       "L 161.958704 17.698317 \n",
       "L 163.752092 17.729101 \n",
       "L 165.54548 17.75948 \n",
       "L 167.338869 17.789482 \n",
       "L 169.132257 17.819117 \n",
       "L 170.925646 17.848408 \n",
       "L 172.719034 17.877364 \n",
       "L 174.512423 17.906007 \n",
       "L 176.305811 17.934349 \n",
       "L 178.099199 17.962401 \n",
       "L 179.892588 17.990181 \n",
       "L 181.685976 18.017699 \n",
       "L 183.479365 18.044966 \n",
       "L 185.272753 18.071998 \n",
       "L 187.066142 18.098801 \n",
       "L 188.85953 18.125388 \n",
       "L 190.652918 18.151768 \n",
       "L 192.446307 18.177951 \n",
       "L 194.239695 18.203947 \n",
       "L 196.033084 18.229761 \n",
       "L 197.826472 18.255405 \n",
       "L 199.619861 18.280887 \n",
       "L 201.413249 18.306211 \n",
       "L 203.206637 18.331391 \n",
       "L 205.000026 18.356424 \n",
       "L 206.793414 18.381323 \n",
       "L 208.586803 18.406096 \n",
       "L 210.380191 18.430744 \n",
       "L 212.17358 18.455274 \n",
       "L 213.966968 18.479693 \n",
       "L 215.760356 18.504004 \n",
       "L 217.553745 18.528212 \n",
       "L 219.347133 18.552325 \n",
       "L 221.140522 18.576345 \n",
       "L 222.93391 18.600276 \n",
       "L 224.727299 18.624122 \n",
       "L 226.520687 18.647888 \n",
       "L 228.314075 18.671578 \n",
       "L 230.107464 18.695192 \n",
       "L 231.900852 18.718736 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 45.478125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 240.778125 143.1 \n",
       "L 240.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 240.778125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 45.478125 7.2 \n",
       "L 240.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"legend_1\">\n",
       "    <g id=\"patch_7\">\n",
       "     <path d=\"M 178.503125 91.328125 \n",
       "L 233.778125 91.328125 \n",
       "Q 235.778125 91.328125 235.778125 89.328125 \n",
       "L 235.778125 60.971875 \n",
       "Q 235.778125 58.971875 233.778125 58.971875 \n",
       "L 178.503125 58.971875 \n",
       "Q 176.503125 58.971875 176.503125 60.971875 \n",
       "L 176.503125 89.328125 \n",
       "Q 176.503125 91.328125 178.503125 91.328125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_30\">\n",
       "     <path d=\"M 180.503125 67.070312 \n",
       "L 200.503125 67.070312 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_31\"/>\n",
       "    <g id=\"text_11\">\n",
       "     <!-- train -->\n",
       "     <g transform=\"translate(208.503125 70.570312)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"line2d_32\">\n",
       "     <path d=\"M 180.503125 81.748437 \n",
       "L 200.503125 81.748437 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_33\"/>\n",
       "    <g id=\"text_12\">\n",
       "     <!-- test -->\n",
       "     <g transform=\"translate(208.503125 85.248437)scale(0.1 -0.1)\">\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"100.732422\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"152.832031\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p19da009c21\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"45.478125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fit_and_plot(poly_features[:2, :], poly_features[n_train:, :], labels[:2], labels[n_train:])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.12 权重衰减"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "数据准备"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "metadata": {},
   "outputs": [],
   "source": [
    "n_train, n_test, num_inputs = 20, 100, 200\n",
    "true_w, true_b = torch.ones(num_inputs, 1) * 0.01, 0.05\n",
    "features = torch.randn((n_train+n_test, num_inputs))\n",
    "labels = torch.matmul(features, true_w) + true_b\n",
    "labels += torch.tensor(np.random.normal(0, 0.01, size=labels.size()), dtype=torch.float)\n",
    "train_features, test_features = features[:n_train, :], features[n_train:, :]\n",
    "train_labels, test_labels = labels[:n_train], labels[n_train:]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "初始化参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [],
   "source": [
    "def init_params():\n",
    "    w = torch.randn((num_inputs, 1), requires_grad=True)\n",
    "    b = torch.zeros(1, requires_grad=True)\n",
    "    return [w, b]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "L2惩罚项"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "metadata": {},
   "outputs": [],
   "source": [
    "def l2_penalty(w):\n",
    "    return (w**2).sum() / 2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {},
   "outputs": [],
   "source": [
    "batch_size, num_epochs, lr = 1, 100, 0.003\n",
    "net, loss = d2l.linreg, d2l.squared_loss\n",
    "dataset = torch.utils.data.TensorDataset(train_features, train_labels)\n",
    "train_iter = torch.utils.data.DataLoader(dataset, batch_size, shuffle=True)\n",
    "def fit_and_plot(lambd):\n",
    "    w, b = init_params()\n",
    "    train_ls, test_ls = [], []\n",
    "    for _ in range(num_epochs):\n",
    "        for X, y in train_iter:\n",
    "            # 添加L2范数惩罚项\n",
    "            l = loss(net(X, w, b), y) + lambd * l2_penalty(w)\n",
    "            l = l.sum()\n",
    "            if w.grad is not None:\n",
    "                w.grad.data.zero_()\n",
    "                b.grad.data.zero_()\n",
    "            l.backward()\n",
    "            d2l.sgd([w, b], lr, batch_size)\n",
    "        train_ls.append(loss(net(train_features, w, b), train_labels).mean().item())\n",
    "        test_ls.append(loss(net(test_features, w, b), test_labels).mean().item())\n",
    "    d2l.semilogy(range(1, num_epochs+1), train_ls, 'epochs', 'loss', \n",
    "                range(1, num_epochs+1), test_ls, ['train', 'test'])\n",
    "    print('L2 norm of w: ', w.norm().item())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 93,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "L2 norm of w:  13.31631088256836\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 258.944602 180.65625\" width=\"258.944602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:47:22.432878</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 258.944602 180.65625 \n",
       "L 258.944602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 55.778125 143.1 \n",
       "L 251.078125 143.1 \n",
       "L 251.078125 7.2 \n",
       "L 55.778125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m6fd514bf9d\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"62.862009\" xlink:href=\"#m6fd514bf9d\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(59.680759 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"98.729778\" xlink:href=\"#m6fd514bf9d\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(92.367278 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"134.597546\" xlink:href=\"#m6fd514bf9d\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(128.235046 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"170.465315\" xlink:href=\"#m6fd514bf9d\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(164.102815 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"206.333084\" xlink:href=\"#m6fd514bf9d\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(199.970584 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"242.200852\" xlink:href=\"#m6fd514bf9d\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(232.657102 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(135.595313 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m03895b9ac7\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m03895b9ac7\" y=\"120.411116\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{-10}}$ -->\n",
       "      <g transform=\"translate(20.878125 124.210335)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(231.391602 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m03895b9ac7\" y=\"93.666575\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- $\\mathdefault{10^{-7}}$ -->\n",
       "      <g transform=\"translate(25.278125 97.465794)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 8.203125 72.90625 \n",
       "L 55.078125 72.90625 \n",
       "L 55.078125 68.703125 \n",
       "L 28.609375 0 \n",
       "L 18.3125 0 \n",
       "L 43.21875 64.59375 \n",
       "L 8.203125 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-55\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-55\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m03895b9ac7\" y=\"66.922034\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- $\\mathdefault{10^{-4}}$ -->\n",
       "      <g transform=\"translate(25.278125 70.721253)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-52\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m03895b9ac7\" y=\"40.177493\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- $\\mathdefault{10^{-1}}$ -->\n",
       "      <g transform=\"translate(25.278125 43.976712)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m03895b9ac7\" y=\"13.432952\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- $\\mathdefault{10^{2}}$ -->\n",
       "      <g transform=\"translate(31.178125 17.232171)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_13\">\n",
       "     <!-- loss -->\n",
       "     <g transform=\"translate(14.798438 84.807812)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"27.783203\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"88.964844\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"141.064453\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_12\">\n",
       "    <path clip-path=\"url(#pc00cbbc69a)\" d=\"M 64.655398 21.703939 \n",
       "L 66.448786 27.500545 \n",
       "L 68.242175 32.7237 \n",
       "L 70.035563 37.495128 \n",
       "L 71.828951 42.191073 \n",
       "L 73.62234 46.807561 \n",
       "L 75.415728 51.30483 \n",
       "L 77.209117 55.712636 \n",
       "L 79.002505 60.019108 \n",
       "L 80.795894 64.368966 \n",
       "L 82.589282 68.581125 \n",
       "L 84.38267 72.905753 \n",
       "L 86.176059 77.086643 \n",
       "L 87.969447 81.161879 \n",
       "L 89.762836 85.116425 \n",
       "L 91.556224 88.976002 \n",
       "L 93.349613 92.904085 \n",
       "L 95.143001 96.555668 \n",
       "L 96.936389 100.105407 \n",
       "L 98.729778 103.627607 \n",
       "L 100.523166 106.950264 \n",
       "L 102.316555 110.256145 \n",
       "L 104.109943 113.65018 \n",
       "L 105.903332 116.871434 \n",
       "L 107.69672 119.741032 \n",
       "L 109.490108 122.884962 \n",
       "L 111.283497 125.546994 \n",
       "L 113.076885 127.81874 \n",
       "L 114.870274 129.232546 \n",
       "L 116.663662 130.671761 \n",
       "L 118.457051 131.156329 \n",
       "L 120.250439 132.087837 \n",
       "L 122.043827 132.992317 \n",
       "L 123.837216 133.578156 \n",
       "L 125.630604 134.435852 \n",
       "L 127.423993 134.671452 \n",
       "L 129.217381 134.264534 \n",
       "L 131.01077 135.435598 \n",
       "L 132.804158 135.941931 \n",
       "L 134.597546 135.062218 \n",
       "L 136.390935 135.901598 \n",
       "L 138.184323 135.740192 \n",
       "L 139.977712 135.863913 \n",
       "L 141.7711 135.831572 \n",
       "L 143.564489 135.033952 \n",
       "L 145.357877 135.599301 \n",
       "L 147.151265 135.433433 \n",
       "L 148.944654 135.523055 \n",
       "L 150.738042 136.046348 \n",
       "L 152.531431 135.233205 \n",
       "L 154.324819 135.496305 \n",
       "L 156.118208 135.011487 \n",
       "L 157.911596 134.92196 \n",
       "L 159.704985 134.830819 \n",
       "L 161.498373 134.505458 \n",
       "L 163.291761 135.334783 \n",
       "L 165.08515 136.086254 \n",
       "L 166.878538 136.186896 \n",
       "L 168.671927 136.163097 \n",
       "L 170.465315 136.08192 \n",
       "L 172.258704 135.816467 \n",
       "L 174.052092 135.865775 \n",
       "L 175.84548 135.706362 \n",
       "L 177.638869 135.918455 \n",
       "L 179.432257 135.887435 \n",
       "L 181.225646 135.707881 \n",
       "L 183.019034 136.030869 \n",
       "L 184.812423 136.00936 \n",
       "L 186.605811 136.205146 \n",
       "L 188.399199 135.94307 \n",
       "L 190.192588 136.438038 \n",
       "L 191.985976 136.776884 \n",
       "L 193.779365 136.922727 \n",
       "L 195.572753 136.312207 \n",
       "L 197.366142 136.032132 \n",
       "L 199.15953 135.511653 \n",
       "L 200.952918 135.610266 \n",
       "L 202.746307 135.764967 \n",
       "L 204.539695 135.64731 \n",
       "L 206.333084 135.554799 \n",
       "L 208.126472 135.374024 \n",
       "L 209.919861 135.535687 \n",
       "L 211.713249 135.057606 \n",
       "L 213.506637 135.317613 \n",
       "L 215.300026 134.838523 \n",
       "L 217.093414 135.57392 \n",
       "L 218.886803 135.79895 \n",
       "L 220.680191 135.790358 \n",
       "L 222.47358 135.983744 \n",
       "L 224.266968 135.892681 \n",
       "L 226.060356 135.610528 \n",
       "L 227.853745 135.682313 \n",
       "L 229.647133 135.419055 \n",
       "L 231.440522 135.439933 \n",
       "L 233.23391 135.409113 \n",
       "L 235.027299 135.235973 \n",
       "L 236.820687 135.245162 \n",
       "L 238.614075 135.180979 \n",
       "L 240.407464 135.455728 \n",
       "L 242.200852 135.532184 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"line2d_13\">\n",
       "    <path clip-path=\"url(#pc00cbbc69a)\" d=\"M 64.655398 13.377273 \n",
       "L 66.448786 13.444582 \n",
       "L 68.242175 13.481767 \n",
       "L 70.035563 13.501246 \n",
       "L 71.828951 13.512683 \n",
       "L 73.62234 13.519956 \n",
       "L 75.415728 13.522794 \n",
       "L 77.209117 13.524957 \n",
       "L 79.002505 13.525826 \n",
       "L 80.795894 13.526516 \n",
       "L 82.589282 13.526809 \n",
       "L 84.38267 13.527044 \n",
       "L 86.176059 13.527151 \n",
       "L 87.969447 13.527199 \n",
       "L 89.762836 13.527242 \n",
       "L 91.556224 13.527266 \n",
       "L 93.349613 13.527274 \n",
       "L 95.143001 13.527279 \n",
       "L 96.936389 13.527286 \n",
       "L 98.729778 13.527288 \n",
       "L 100.523166 13.52729 \n",
       "L 102.316555 13.52729 \n",
       "L 104.109943 13.527291 \n",
       "L 105.903332 13.527291 \n",
       "L 107.69672 13.527292 \n",
       "L 109.490108 13.527292 \n",
       "L 111.283497 13.527292 \n",
       "L 113.076885 13.527292 \n",
       "L 114.870274 13.527292 \n",
       "L 116.663662 13.527292 \n",
       "L 118.457051 13.527292 \n",
       "L 120.250439 13.527292 \n",
       "L 122.043827 13.527292 \n",
       "L 123.837216 13.527292 \n",
       "L 125.630604 13.527292 \n",
       "L 127.423993 13.527292 \n",
       "L 129.217381 13.527292 \n",
       "L 131.01077 13.527292 \n",
       "L 132.804158 13.527292 \n",
       "L 134.597546 13.527292 \n",
       "L 136.390935 13.527292 \n",
       "L 138.184323 13.527292 \n",
       "L 139.977712 13.527292 \n",
       "L 141.7711 13.527292 \n",
       "L 143.564489 13.527292 \n",
       "L 145.357877 13.527292 \n",
       "L 147.151265 13.527292 \n",
       "L 148.944654 13.527292 \n",
       "L 150.738042 13.527292 \n",
       "L 152.531431 13.527292 \n",
       "L 154.324819 13.527292 \n",
       "L 156.118208 13.527292 \n",
       "L 157.911596 13.527292 \n",
       "L 159.704985 13.527292 \n",
       "L 161.498373 13.527292 \n",
       "L 163.291761 13.527292 \n",
       "L 165.08515 13.527292 \n",
       "L 166.878538 13.527292 \n",
       "L 168.671927 13.527292 \n",
       "L 170.465315 13.527292 \n",
       "L 172.258704 13.527292 \n",
       "L 174.052092 13.527292 \n",
       "L 175.84548 13.527292 \n",
       "L 177.638869 13.527292 \n",
       "L 179.432257 13.527292 \n",
       "L 181.225646 13.527292 \n",
       "L 183.019034 13.527292 \n",
       "L 184.812423 13.527292 \n",
       "L 186.605811 13.527292 \n",
       "L 188.399199 13.527292 \n",
       "L 190.192588 13.527292 \n",
       "L 191.985976 13.527292 \n",
       "L 193.779365 13.527292 \n",
       "L 195.572753 13.527292 \n",
       "L 197.366142 13.527292 \n",
       "L 199.15953 13.527292 \n",
       "L 200.952918 13.527292 \n",
       "L 202.746307 13.527292 \n",
       "L 204.539695 13.527292 \n",
       "L 206.333084 13.527292 \n",
       "L 208.126472 13.527292 \n",
       "L 209.919861 13.527292 \n",
       "L 211.713249 13.527292 \n",
       "L 213.506637 13.527292 \n",
       "L 215.300026 13.527292 \n",
       "L 217.093414 13.527292 \n",
       "L 218.886803 13.527292 \n",
       "L 220.680191 13.527292 \n",
       "L 222.47358 13.527292 \n",
       "L 224.266968 13.527292 \n",
       "L 226.060356 13.527292 \n",
       "L 227.853745 13.527292 \n",
       "L 229.647133 13.527292 \n",
       "L 231.440522 13.527292 \n",
       "L 233.23391 13.527292 \n",
       "L 235.027299 13.527292 \n",
       "L 236.820687 13.527292 \n",
       "L 238.614075 13.527292 \n",
       "L 240.407464 13.527292 \n",
       "L 242.200852 13.527292 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 55.778125 143.1 \n",
       "L 55.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 251.078125 143.1 \n",
       "L 251.078125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 55.778125 143.1 \n",
       "L 251.078125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 55.778125 7.2 \n",
       "L 251.078125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"legend_1\">\n",
       "    <g id=\"patch_7\">\n",
       "     <path d=\"M 188.803125 91.328125 \n",
       "L 244.078125 91.328125 \n",
       "Q 246.078125 91.328125 246.078125 89.328125 \n",
       "L 246.078125 60.971875 \n",
       "Q 246.078125 58.971875 244.078125 58.971875 \n",
       "L 188.803125 58.971875 \n",
       "Q 186.803125 58.971875 186.803125 60.971875 \n",
       "L 186.803125 89.328125 \n",
       "Q 186.803125 91.328125 188.803125 91.328125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_14\">\n",
       "     <path d=\"M 190.803125 67.070312 \n",
       "L 210.803125 67.070312 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_15\"/>\n",
       "    <g id=\"text_14\">\n",
       "     <!-- train -->\n",
       "     <g transform=\"translate(218.803125 70.570312)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"line2d_16\">\n",
       "     <path d=\"M 190.803125 81.748437 \n",
       "L 210.803125 81.748437 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_17\"/>\n",
       "    <g id=\"text_15\">\n",
       "     <!-- test -->\n",
       "     <g transform=\"translate(218.803125 85.248437)scale(0.1 -0.1)\">\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"100.732422\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"152.832031\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"pc00cbbc69a\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"55.778125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fit_and_plot(lambd=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "L2 norm of w:  0.03995227813720703\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"182.519386pt\" version=\"1.1\" viewBox=\"0 0 254.544602 182.519386\" width=\"254.544602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:47:25.196661</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 182.519386 \n",
       "L 254.544602 182.519386 \n",
       "L 254.544602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 51.378125 144.963136 \n",
       "L 246.678125 144.963136 \n",
       "L 246.678125 9.063136 \n",
       "L 51.378125 9.063136 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m010b35afcf\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"58.462009\" xlink:href=\"#m010b35afcf\" y=\"144.963136\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(55.280759 159.561574)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"94.329778\" xlink:href=\"#m010b35afcf\" y=\"144.963136\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(87.967278 159.561574)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"130.197546\" xlink:href=\"#m010b35afcf\" y=\"144.963136\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(123.835046 159.561574)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"166.065315\" xlink:href=\"#m010b35afcf\" y=\"144.963136\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(159.702815 159.561574)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"201.933084\" xlink:href=\"#m010b35afcf\" y=\"144.963136\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(195.570584 159.561574)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"237.800852\" xlink:href=\"#m010b35afcf\" y=\"144.963136\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(228.257102 159.561574)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(131.195312 173.239699)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"mc9de1e342c\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mc9de1e342c\" y=\"105.459673\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{-2}}$ -->\n",
       "      <g transform=\"translate(20.878125 109.258892)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mc9de1e342c\" y=\"58.229446\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- $\\mathdefault{10^{0}}$ -->\n",
       "      <g transform=\"translate(26.778125 62.028665)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mc9de1e342c\" y=\"10.999219\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- $\\mathdefault{10^{2}}$ -->\n",
       "      <g transform=\"translate(26.778125 14.798437)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_11\">\n",
       "     <!-- loss -->\n",
       "     <g transform=\"translate(14.798437 86.670949)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"27.783203\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"88.964844\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"141.064453\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_10\">\n",
       "    <path clip-path=\"url(#pbb9e61d8ea)\" d=\"M 60.255398 35.668432 \n",
       "L 62.048786 55.81798 \n",
       "L 63.842175 73.504849 \n",
       "L 65.635563 89.97911 \n",
       "L 67.428951 105.169461 \n",
       "L 69.22234 118.498938 \n",
       "L 71.015728 125.351829 \n",
       "L 72.809117 125.447212 \n",
       "L 74.602505 125.6686 \n",
       "L 76.395894 124.205834 \n",
       "L 78.189282 125.390034 \n",
       "L 79.98267 125.704678 \n",
       "L 81.776059 126.310937 \n",
       "L 83.569447 125.268434 \n",
       "L 85.362836 125.999047 \n",
       "L 87.156224 126.558107 \n",
       "L 88.949613 126.778632 \n",
       "L 90.743001 127.207242 \n",
       "L 92.536389 127.115873 \n",
       "L 94.329778 126.98635 \n",
       "L 96.123166 126.179297 \n",
       "L 97.916555 126.891797 \n",
       "L 99.709943 128.475579 \n",
       "L 101.503332 129.199665 \n",
       "L 103.29672 128.588353 \n",
       "L 105.090108 127.982741 \n",
       "L 106.883497 128.413837 \n",
       "L 108.676885 128.651382 \n",
       "L 110.470274 128.95691 \n",
       "L 112.263662 128.80253 \n",
       "L 114.057051 129.008228 \n",
       "L 115.850439 129.257347 \n",
       "L 117.643827 130.124308 \n",
       "L 119.437216 129.95941 \n",
       "L 121.230604 130.129243 \n",
       "L 123.023993 130.913854 \n",
       "L 124.817381 129.428886 \n",
       "L 126.61077 130.056528 \n",
       "L 128.404158 130.385151 \n",
       "L 130.197546 130.151179 \n",
       "L 131.990935 130.145196 \n",
       "L 133.784323 129.12027 \n",
       "L 135.577712 130.910886 \n",
       "L 137.3711 130.27951 \n",
       "L 139.164489 131.369914 \n",
       "L 140.957877 132.639937 \n",
       "L 142.751265 132.958057 \n",
       "L 144.544654 132.377361 \n",
       "L 146.338042 132.359291 \n",
       "L 148.131431 133.355873 \n",
       "L 149.924819 134.343706 \n",
       "L 151.718208 134.449331 \n",
       "L 153.511596 134.433464 \n",
       "L 155.304985 134.209154 \n",
       "L 157.098373 132.644971 \n",
       "L 158.891761 134.569823 \n",
       "L 160.68515 133.677932 \n",
       "L 162.478538 133.599675 \n",
       "L 164.271927 133.661332 \n",
       "L 166.065315 134.198891 \n",
       "L 167.858704 134.2795 \n",
       "L 169.652092 135.701448 \n",
       "L 171.44548 134.106082 \n",
       "L 173.238869 134.74707 \n",
       "L 175.032257 135.145901 \n",
       "L 176.825646 134.224528 \n",
       "L 178.619034 135.633712 \n",
       "L 180.412423 135.528689 \n",
       "L 182.205811 136.281597 \n",
       "L 183.999199 136.08752 \n",
       "L 185.792588 136.39174 \n",
       "L 187.585976 135.943352 \n",
       "L 189.379365 135.971463 \n",
       "L 191.172753 136.273755 \n",
       "L 192.966142 136.428108 \n",
       "L 194.75953 135.550629 \n",
       "L 196.552918 135.902047 \n",
       "L 198.346307 136.250507 \n",
       "L 200.139695 135.884621 \n",
       "L 201.933084 137.470608 \n",
       "L 203.726472 137.449035 \n",
       "L 205.519861 138.459016 \n",
       "L 207.313249 138.465873 \n",
       "L 209.106637 138.785864 \n",
       "L 210.900026 137.522422 \n",
       "L 212.693414 138.062698 \n",
       "L 214.486803 137.298657 \n",
       "L 216.280191 136.532182 \n",
       "L 218.07358 137.674318 \n",
       "L 219.866968 137.38703 \n",
       "L 221.660356 138.20356 \n",
       "L 223.453745 137.509886 \n",
       "L 225.247133 138.114047 \n",
       "L 227.040522 137.818333 \n",
       "L 228.83391 137.191437 \n",
       "L 230.627299 136.472049 \n",
       "L 232.420687 136.912314 \n",
       "L 234.214075 137.068224 \n",
       "L 236.007464 136.920773 \n",
       "L 237.800852 137.703286 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"line2d_11\">\n",
       "    <path clip-path=\"url(#pbb9e61d8ea)\" d=\"M 60.255398 15.240409 \n",
       "L 62.048786 18.993525 \n",
       "L 63.842175 22.603614 \n",
       "L 65.635563 26.229192 \n",
       "L 67.428951 29.860554 \n",
       "L 69.22234 33.491263 \n",
       "L 71.015728 37.108491 \n",
       "L 72.809117 40.719244 \n",
       "L 74.602505 44.297 \n",
       "L 76.395894 47.853159 \n",
       "L 78.189282 51.381304 \n",
       "L 79.98267 54.861781 \n",
       "L 81.776059 58.299758 \n",
       "L 83.569447 61.665985 \n",
       "L 85.362836 64.9534 \n",
       "L 87.156224 68.145218 \n",
       "L 88.949613 71.221606 \n",
       "L 90.743001 74.159989 \n",
       "L 92.536389 76.966865 \n",
       "L 94.329778 79.546735 \n",
       "L 96.123166 81.958368 \n",
       "L 97.916555 84.119604 \n",
       "L 99.709943 86.089683 \n",
       "L 101.503332 87.826044 \n",
       "L 103.29672 89.367371 \n",
       "L 105.090108 90.664173 \n",
       "L 106.883497 91.782914 \n",
       "L 108.676885 92.702591 \n",
       "L 110.470274 93.53042 \n",
       "L 112.263662 94.264795 \n",
       "L 114.057051 94.899133 \n",
       "L 115.850439 95.449821 \n",
       "L 117.643827 95.970973 \n",
       "L 119.437216 96.340101 \n",
       "L 121.230604 96.732806 \n",
       "L 123.023993 97.129559 \n",
       "L 124.817381 97.415873 \n",
       "L 126.61077 97.720003 \n",
       "L 128.404158 97.949438 \n",
       "L 130.197546 98.21885 \n",
       "L 131.990935 98.4939 \n",
       "L 133.784323 98.70587 \n",
       "L 135.577712 98.952206 \n",
       "L 137.3711 99.10693 \n",
       "L 139.164489 99.345692 \n",
       "L 140.957877 99.556416 \n",
       "L 142.751265 99.689428 \n",
       "L 144.544654 99.932503 \n",
       "L 146.338042 100.117554 \n",
       "L 148.131431 100.260755 \n",
       "L 149.924819 100.39938 \n",
       "L 151.718208 100.595616 \n",
       "L 153.511596 100.76442 \n",
       "L 155.304985 100.931928 \n",
       "L 157.098373 101.136928 \n",
       "L 158.891761 101.237172 \n",
       "L 160.68515 101.39473 \n",
       "L 162.478538 101.526451 \n",
       "L 164.271927 101.623741 \n",
       "L 166.065315 101.788885 \n",
       "L 167.858704 101.911041 \n",
       "L 169.652092 102.086442 \n",
       "L 171.44548 102.233947 \n",
       "L 173.238869 102.359646 \n",
       "L 175.032257 102.468004 \n",
       "L 176.825646 102.571994 \n",
       "L 178.619034 102.626165 \n",
       "L 180.412423 102.769988 \n",
       "L 182.205811 102.855701 \n",
       "L 183.999199 102.984046 \n",
       "L 185.792588 103.081149 \n",
       "L 187.585976 103.196727 \n",
       "L 189.379365 103.282705 \n",
       "L 191.172753 103.408224 \n",
       "L 192.966142 103.473034 \n",
       "L 194.75953 103.545321 \n",
       "L 196.552918 103.669066 \n",
       "L 198.346307 103.747292 \n",
       "L 200.139695 103.875317 \n",
       "L 201.933084 103.908108 \n",
       "L 203.726472 103.959663 \n",
       "L 205.519861 104.008772 \n",
       "L 207.313249 104.139999 \n",
       "L 209.106637 104.211564 \n",
       "L 210.900026 104.223449 \n",
       "L 212.693414 104.289588 \n",
       "L 214.486803 104.426308 \n",
       "L 216.280191 104.50127 \n",
       "L 218.07358 104.514452 \n",
       "L 219.866968 104.556504 \n",
       "L 221.660356 104.650462 \n",
       "L 223.453745 104.702788 \n",
       "L 225.247133 104.71611 \n",
       "L 227.040522 104.764678 \n",
       "L 228.83391 104.842642 \n",
       "L 230.627299 104.921705 \n",
       "L 232.420687 104.951244 \n",
       "L 234.214075 104.985375 \n",
       "L 236.007464 105.045557 \n",
       "L 237.800852 105.098852 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 51.378125 144.963136 \n",
       "L 51.378125 9.063136 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 246.678125 144.963136 \n",
       "L 246.678125 9.063136 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 51.378125 144.963136 \n",
       "L 246.678125 144.963136 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 51.378125 9.063136 \n",
       "L 246.678125 9.063136 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"legend_1\">\n",
       "    <g id=\"patch_7\">\n",
       "     <path d=\"M 184.403125 46.419386 \n",
       "L 239.678125 46.419386 \n",
       "Q 241.678125 46.419386 241.678125 44.419386 \n",
       "L 241.678125 16.063136 \n",
       "Q 241.678125 14.063136 239.678125 14.063136 \n",
       "L 184.403125 14.063136 \n",
       "Q 182.403125 14.063136 182.403125 16.063136 \n",
       "L 182.403125 44.419386 \n",
       "Q 182.403125 46.419386 184.403125 46.419386 \n",
       "z\n",
       "\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_12\">\n",
       "     <path d=\"M 186.403125 22.161574 \n",
       "L 206.403125 22.161574 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_13\"/>\n",
       "    <g id=\"text_12\">\n",
       "     <!-- train -->\n",
       "     <g transform=\"translate(214.403125 25.661574)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"line2d_14\">\n",
       "     <path d=\"M 186.403125 36.839699 \n",
       "L 206.403125 36.839699 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_15\"/>\n",
       "    <g id=\"text_13\">\n",
       "     <!-- test -->\n",
       "     <g transform=\"translate(214.403125 40.339699)scale(0.1 -0.1)\">\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"100.732422\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"152.832031\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"pbb9e61d8ea\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"51.378125\" y=\"9.063136\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fit_and_plot(lambd=3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "简洁实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "metadata": {},
   "outputs": [],
   "source": [
    "def fit_and_plot_pytorch(wd):\n",
    "    net = nn.Linear(num_inputs, 1)\n",
    "    nn.init.normal_(net.weight, mean=0, std=1)\n",
    "    nn.init.normal_(net.bias, mean=0, std=1)\n",
    "    # 对权重参数衰减\n",
    "    optimizer_w = torch.optim.SGD(params=[net.weight], lr=lr, weight_decay=wd)\n",
    "    optimizer_b = torch.optim.SGD(params=[net.bias], lr=lr)\n",
    "    train_ls, test_ls = [], []\n",
    "    for _ in range(num_epochs):\n",
    "        for X, y in train_iter:\n",
    "            l = loss(net(X), y).mean()\n",
    "            optimizer_w.zero_grad()\n",
    "            optimizer_b.zero_grad()\n",
    "            l.backward()\n",
    "            # 对两个optimizer实例分别调用step函数，从而分别更新权重和偏差\n",
    "            optimizer_w.step()\n",
    "            optimizer_b.step()\n",
    "        train_ls.append(loss(net(train_features), train_labels).mean().item())\n",
    "        test_ls.append(loss(net(test_features), test_labels).mean().item())\n",
    "    d2l.semilogy(range(1, num_epochs+1), train_ls, 'epochs', 'loss', \n",
    "                range(1, num_epochs+1), test_ls, ['train', 'test'])\n",
    "    print('L2 norm of w: ', net.weight.data.norm().item())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "L2 norm of w:  12.619309425354004\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 258.944602 180.65625\" width=\"258.944602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:47:27.247770</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 258.944602 180.65625 \n",
       "L 258.944602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 55.778125 143.1 \n",
       "L 251.078125 143.1 \n",
       "L 251.078125 7.2 \n",
       "L 55.778125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"mffc02fa613\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"62.862009\" xlink:href=\"#mffc02fa613\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(59.680759 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"98.729778\" xlink:href=\"#mffc02fa613\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(92.367278 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"134.597546\" xlink:href=\"#mffc02fa613\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(128.235046 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"170.465315\" xlink:href=\"#mffc02fa613\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(164.102815 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"206.333084\" xlink:href=\"#mffc02fa613\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(199.970584 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"242.200852\" xlink:href=\"#mffc02fa613\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(232.657102 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(135.595313 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m0379a41881\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m0379a41881\" y=\"120.413252\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{-11}}$ -->\n",
       "      <g transform=\"translate(20.878125 124.21247)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(231.391602 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m0379a41881\" y=\"95.256643\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- $\\mathdefault{10^{-8}}$ -->\n",
       "      <g transform=\"translate(25.278125 99.055862)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-56\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m0379a41881\" y=\"70.100034\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- $\\mathdefault{10^{-5}}$ -->\n",
       "      <g transform=\"translate(25.278125 73.899253)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.796875 72.90625 \n",
       "L 49.515625 72.90625 \n",
       "L 49.515625 64.59375 \n",
       "L 19.828125 64.59375 \n",
       "L 19.828125 46.734375 \n",
       "Q 21.96875 47.46875 24.109375 47.828125 \n",
       "Q 26.265625 48.1875 28.421875 48.1875 \n",
       "Q 40.625 48.1875 47.75 41.5 \n",
       "Q 54.890625 34.8125 54.890625 23.390625 \n",
       "Q 54.890625 11.625 47.5625 5.09375 \n",
       "Q 40.234375 -1.421875 26.90625 -1.421875 \n",
       "Q 22.3125 -1.421875 17.546875 -0.640625 \n",
       "Q 12.796875 0.140625 7.71875 1.703125 \n",
       "L 7.71875 11.625 \n",
       "Q 12.109375 9.234375 16.796875 8.0625 \n",
       "Q 21.484375 6.890625 26.703125 6.890625 \n",
       "Q 35.15625 6.890625 40.078125 11.328125 \n",
       "Q 45.015625 15.765625 45.015625 23.390625 \n",
       "Q 45.015625 31 40.078125 35.4375 \n",
       "Q 35.15625 39.890625 26.703125 39.890625 \n",
       "Q 22.75 39.890625 18.8125 39.015625 \n",
       "Q 14.890625 38.140625 10.796875 36.28125 \n",
       "z\n",
       "\" id=\"DejaVuSans-53\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-53\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m0379a41881\" y=\"44.943425\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- $\\mathdefault{10^{-2}}$ -->\n",
       "      <g transform=\"translate(25.278125 48.742644)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.778125\" xlink:href=\"#m0379a41881\" y=\"19.786817\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- $\\mathdefault{10^{1}}$ -->\n",
       "      <g transform=\"translate(31.178125 23.586035)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_13\">\n",
       "     <!-- loss -->\n",
       "     <g transform=\"translate(14.798438 84.807812)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"27.783203\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"88.964844\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"141.064453\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_12\">\n",
       "    <path clip-path=\"url(#ped1abbba11)\" d=\"M 64.655398 18.149154 \n",
       "L 66.448786 24.430541 \n",
       "L 68.242175 29.897476 \n",
       "L 70.035563 34.889871 \n",
       "L 71.828951 39.690585 \n",
       "L 73.62234 44.129789 \n",
       "L 75.415728 48.269039 \n",
       "L 77.209117 52.275083 \n",
       "L 79.002505 56.026554 \n",
       "L 80.795894 59.543317 \n",
       "L 82.589282 62.991741 \n",
       "L 84.38267 66.264319 \n",
       "L 86.176059 69.438521 \n",
       "L 87.969447 72.542547 \n",
       "L 89.762836 75.602178 \n",
       "L 91.556224 78.563262 \n",
       "L 93.349613 81.526138 \n",
       "L 95.143001 84.434841 \n",
       "L 96.936389 87.452313 \n",
       "L 98.729778 90.349744 \n",
       "L 100.523166 93.223691 \n",
       "L 102.316555 96.094608 \n",
       "L 104.109943 98.922399 \n",
       "L 105.903332 101.826168 \n",
       "L 107.69672 104.645484 \n",
       "L 109.490108 107.625089 \n",
       "L 111.283497 110.357035 \n",
       "L 113.076885 113.009756 \n",
       "L 114.870274 115.591542 \n",
       "L 116.663662 118.173403 \n",
       "L 118.457051 119.9106 \n",
       "L 120.250439 121.291424 \n",
       "L 122.043827 123.069873 \n",
       "L 123.837216 124.332204 \n",
       "L 125.630604 124.526781 \n",
       "L 127.423993 126.477216 \n",
       "L 129.217381 126.897506 \n",
       "L 131.01077 127.718806 \n",
       "L 132.804158 126.892232 \n",
       "L 134.597546 127.058267 \n",
       "L 136.390935 127.72687 \n",
       "L 138.184323 128.507885 \n",
       "L 139.977712 129.245877 \n",
       "L 141.7711 129.477836 \n",
       "L 143.564489 129.466745 \n",
       "L 145.357877 129.166834 \n",
       "L 147.151265 130.262451 \n",
       "L 148.944654 130.374632 \n",
       "L 150.738042 130.373386 \n",
       "L 152.531431 130.82293 \n",
       "L 154.324819 130.779488 \n",
       "L 156.118208 130.326588 \n",
       "L 157.911596 130.666474 \n",
       "L 159.704985 131.35215 \n",
       "L 161.498373 130.902743 \n",
       "L 163.291761 132.676395 \n",
       "L 165.08515 131.797246 \n",
       "L 166.878538 132.274471 \n",
       "L 168.671927 133.4733 \n",
       "L 170.465315 133.248074 \n",
       "L 172.258704 133.436708 \n",
       "L 174.052092 133.188746 \n",
       "L 175.84548 132.975387 \n",
       "L 177.638869 131.369472 \n",
       "L 179.432257 132.769506 \n",
       "L 181.225646 132.949006 \n",
       "L 183.019034 133.005039 \n",
       "L 184.812423 132.932866 \n",
       "L 186.605811 133.141011 \n",
       "L 188.399199 133.290575 \n",
       "L 190.192588 134.042721 \n",
       "L 191.985976 134.039991 \n",
       "L 193.779365 134.041356 \n",
       "L 195.572753 133.762975 \n",
       "L 197.366142 135.635325 \n",
       "L 199.15953 136.489023 \n",
       "L 200.952918 136.01838 \n",
       "L 202.746307 136.01838 \n",
       "L 204.539695 136.094315 \n",
       "L 206.333084 135.535244 \n",
       "L 208.126472 134.989981 \n",
       "L 209.919861 136.589268 \n",
       "L 211.713249 136.922727 \n",
       "L 213.506637 136.565994 \n",
       "L 215.300026 136.302792 \n",
       "L 217.093414 136.485017 \n",
       "L 218.886803 136.707926 \n",
       "L 220.680191 135.542449 \n",
       "L 222.47358 136.242356 \n",
       "L 224.266968 136.428071 \n",
       "L 226.060356 135.490276 \n",
       "L 227.853745 134.717156 \n",
       "L 229.647133 131.790252 \n",
       "L 231.440522 132.253531 \n",
       "L 233.23391 134.850162 \n",
       "L 235.027299 135.061505 \n",
       "L 236.820687 133.377095 \n",
       "L 238.614075 132.666559 \n",
       "L 240.407464 132.868024 \n",
       "L 242.200852 132.02687 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"line2d_13\">\n",
       "    <path clip-path=\"url(#ped1abbba11)\" d=\"M 64.655398 13.377273 \n",
       "L 66.448786 13.55373 \n",
       "L 68.242175 13.601303 \n",
       "L 70.035563 13.616092 \n",
       "L 71.828951 13.620318 \n",
       "L 73.62234 13.621336 \n",
       "L 75.415728 13.621696 \n",
       "L 77.209117 13.622061 \n",
       "L 79.002505 13.622336 \n",
       "L 80.795894 13.622446 \n",
       "L 82.589282 13.622521 \n",
       "L 84.38267 13.622453 \n",
       "L 86.176059 13.622483 \n",
       "L 87.969447 13.622492 \n",
       "L 89.762836 13.622481 \n",
       "L 91.556224 13.622481 \n",
       "L 93.349613 13.622475 \n",
       "L 95.143001 13.622477 \n",
       "L 96.936389 13.622477 \n",
       "L 98.729778 13.622478 \n",
       "L 100.523166 13.622477 \n",
       "L 102.316555 13.622477 \n",
       "L 104.109943 13.622478 \n",
       "L 105.903332 13.622478 \n",
       "L 107.69672 13.622478 \n",
       "L 109.490108 13.622478 \n",
       "L 111.283497 13.622478 \n",
       "L 113.076885 13.622478 \n",
       "L 114.870274 13.622478 \n",
       "L 116.663662 13.622478 \n",
       "L 118.457051 13.622479 \n",
       "L 120.250439 13.622479 \n",
       "L 122.043827 13.622479 \n",
       "L 123.837216 13.622479 \n",
       "L 125.630604 13.622479 \n",
       "L 127.423993 13.622479 \n",
       "L 129.217381 13.622479 \n",
       "L 131.01077 13.622479 \n",
       "L 132.804158 13.622479 \n",
       "L 134.597546 13.622479 \n",
       "L 136.390935 13.622479 \n",
       "L 138.184323 13.622479 \n",
       "L 139.977712 13.622478 \n",
       "L 141.7711 13.622479 \n",
       "L 143.564489 13.622478 \n",
       "L 145.357877 13.622479 \n",
       "L 147.151265 13.622478 \n",
       "L 148.944654 13.622478 \n",
       "L 150.738042 13.622478 \n",
       "L 152.531431 13.622478 \n",
       "L 154.324819 13.622478 \n",
       "L 156.118208 13.622478 \n",
       "L 157.911596 13.622478 \n",
       "L 159.704985 13.622478 \n",
       "L 161.498373 13.622479 \n",
       "L 163.291761 13.622478 \n",
       "L 165.08515 13.622479 \n",
       "L 166.878538 13.622479 \n",
       "L 168.671927 13.622479 \n",
       "L 170.465315 13.622479 \n",
       "L 172.258704 13.622479 \n",
       "L 174.052092 13.622478 \n",
       "L 175.84548 13.622478 \n",
       "L 177.638869 13.622478 \n",
       "L 179.432257 13.622478 \n",
       "L 181.225646 13.622478 \n",
       "L 183.019034 13.622478 \n",
       "L 184.812423 13.622478 \n",
       "L 186.605811 13.622478 \n",
       "L 188.399199 13.622478 \n",
       "L 190.192588 13.622478 \n",
       "L 191.985976 13.622478 \n",
       "L 193.779365 13.622478 \n",
       "L 195.572753 13.622478 \n",
       "L 197.366142 13.622478 \n",
       "L 199.15953 13.622478 \n",
       "L 200.952918 13.622478 \n",
       "L 202.746307 13.622478 \n",
       "L 204.539695 13.622478 \n",
       "L 206.333084 13.622478 \n",
       "L 208.126472 13.622478 \n",
       "L 209.919861 13.622478 \n",
       "L 211.713249 13.622478 \n",
       "L 213.506637 13.622478 \n",
       "L 215.300026 13.622478 \n",
       "L 217.093414 13.622478 \n",
       "L 218.886803 13.622478 \n",
       "L 220.680191 13.622478 \n",
       "L 222.47358 13.622478 \n",
       "L 224.266968 13.622478 \n",
       "L 226.060356 13.622478 \n",
       "L 227.853745 13.622478 \n",
       "L 229.647133 13.622478 \n",
       "L 231.440522 13.622479 \n",
       "L 233.23391 13.622478 \n",
       "L 235.027299 13.622478 \n",
       "L 236.820687 13.622478 \n",
       "L 238.614075 13.622478 \n",
       "L 240.407464 13.622478 \n",
       "L 242.200852 13.622478 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 55.778125 143.1 \n",
       "L 55.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 251.078125 143.1 \n",
       "L 251.078125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 55.778125 143.1 \n",
       "L 251.078125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 55.778125 7.2 \n",
       "L 251.078125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"legend_1\">\n",
       "    <g id=\"patch_7\">\n",
       "     <path d=\"M 188.803125 91.328125 \n",
       "L 244.078125 91.328125 \n",
       "Q 246.078125 91.328125 246.078125 89.328125 \n",
       "L 246.078125 60.971875 \n",
       "Q 246.078125 58.971875 244.078125 58.971875 \n",
       "L 188.803125 58.971875 \n",
       "Q 186.803125 58.971875 186.803125 60.971875 \n",
       "L 186.803125 89.328125 \n",
       "Q 186.803125 91.328125 188.803125 91.328125 \n",
       "z\n",
       "\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_14\">\n",
       "     <path d=\"M 190.803125 67.070312 \n",
       "L 210.803125 67.070312 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_15\"/>\n",
       "    <g id=\"text_14\">\n",
       "     <!-- train -->\n",
       "     <g transform=\"translate(218.803125 70.570312)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"line2d_16\">\n",
       "     <path d=\"M 190.803125 81.748437 \n",
       "L 210.803125 81.748437 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_17\"/>\n",
       "    <g id=\"text_15\">\n",
       "     <!-- test -->\n",
       "     <g transform=\"translate(218.803125 85.248437)scale(0.1 -0.1)\">\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"100.732422\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"152.832031\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"ped1abbba11\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"55.778125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fit_and_plot_pytorch(0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 97,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "L2 norm of w:  0.03562627360224724\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 254.544602 180.65625\" width=\"254.544602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T16:47:29.634807</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 254.544602 180.65625 \n",
       "L 254.544602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 51.378125 143.1 \n",
       "L 246.678125 143.1 \n",
       "L 246.678125 7.2 \n",
       "L 51.378125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m8e46ff752a\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"58.462009\" xlink:href=\"#m8e46ff752a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(55.280759 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"94.329778\" xlink:href=\"#m8e46ff752a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(87.967278 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"130.197546\" xlink:href=\"#m8e46ff752a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(123.835046 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"166.065315\" xlink:href=\"#m8e46ff752a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(159.702815 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"201.933084\" xlink:href=\"#m8e46ff752a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(195.570584 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"237.800852\" xlink:href=\"#m8e46ff752a\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(228.257102 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(131.195312 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"mac22db6b12\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mac22db6b12\" y=\"124.370014\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{-3}}$ -->\n",
       "      <g transform=\"translate(20.878125 128.169232)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 10.59375 35.5 \n",
       "L 73.1875 35.5 \n",
       "L 73.1875 27.203125 \n",
       "L 10.59375 27.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-8722\"/>\n",
       "        <path d=\"M 40.578125 39.3125 \n",
       "Q 47.65625 37.796875 51.625 33 \n",
       "Q 55.609375 28.21875 55.609375 21.1875 \n",
       "Q 55.609375 10.40625 48.1875 4.484375 \n",
       "Q 40.765625 -1.421875 27.09375 -1.421875 \n",
       "Q 22.515625 -1.421875 17.65625 -0.515625 \n",
       "Q 12.796875 0.390625 7.625 2.203125 \n",
       "L 7.625 11.71875 \n",
       "Q 11.71875 9.328125 16.59375 8.109375 \n",
       "Q 21.484375 6.890625 26.8125 6.890625 \n",
       "Q 36.078125 6.890625 40.9375 10.546875 \n",
       "Q 45.796875 14.203125 45.796875 21.1875 \n",
       "Q 45.796875 27.640625 41.28125 31.265625 \n",
       "Q 36.765625 34.90625 28.71875 34.90625 \n",
       "L 20.21875 34.90625 \n",
       "L 20.21875 43.015625 \n",
       "L 29.109375 43.015625 \n",
       "Q 36.375 43.015625 40.234375 45.921875 \n",
       "Q 44.09375 48.828125 44.09375 54.296875 \n",
       "Q 44.09375 59.90625 40.109375 62.90625 \n",
       "Q 36.140625 65.921875 28.71875 65.921875 \n",
       "Q 24.65625 65.921875 20.015625 65.03125 \n",
       "Q 15.375 64.15625 9.8125 62.3125 \n",
       "L 9.8125 71.09375 \n",
       "Q 15.4375 72.65625 20.34375 73.4375 \n",
       "Q 25.25 74.21875 29.59375 74.21875 \n",
       "Q 40.828125 74.21875 47.359375 69.109375 \n",
       "Q 53.90625 64.015625 53.90625 55.328125 \n",
       "Q 53.90625 49.265625 50.4375 45.09375 \n",
       "Q 46.96875 40.921875 40.578125 39.3125 \n",
       "z\n",
       "\" id=\"DejaVuSans-51\"/>\n",
       "       </defs>\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-51\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mac22db6b12\" y=\"100.872197\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- $\\mathdefault{10^{-2}}$ -->\n",
       "      <g transform=\"translate(20.878125 104.671416)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-50\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mac22db6b12\" y=\"77.37438\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- $\\mathdefault{10^{-1}}$ -->\n",
       "      <g transform=\"translate(20.878125 81.173599)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-8722\"/>\n",
       "       <use transform=\"translate(186.855469 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mac22db6b12\" y=\"53.876564\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- $\\mathdefault{10^{0}}$ -->\n",
       "      <g transform=\"translate(26.778125 57.675783)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"51.378125\" xlink:href=\"#mac22db6b12\" y=\"30.378747\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- $\\mathdefault{10^{1}}$ -->\n",
       "      <g transform=\"translate(26.778125 34.177966)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.684375)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.684375)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 38.965625)scale(0.7)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -2 0 \n",
       "\" id=\"m9ebc71b89e\" style=\"stroke:#000000;stroke-width:0.6;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"140.794283\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_7\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"136.656522\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_8\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"133.720735\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_9\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"131.443561\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_10\">\n",
       "     <g id=\"line2d_16\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"129.582975\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_11\">\n",
       "     <g id=\"line2d_17\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"128.009871\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_12\">\n",
       "     <g id=\"line2d_18\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"126.647187\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_13\">\n",
       "     <g id=\"line2d_19\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"125.445215\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_14\">\n",
       "     <g id=\"line2d_20\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"117.296466\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_15\">\n",
       "     <g id=\"line2d_21\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"113.158706\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_16\">\n",
       "     <g id=\"line2d_22\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"110.222918\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_17\">\n",
       "     <g id=\"line2d_23\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"107.945745\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_18\">\n",
       "     <g id=\"line2d_24\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"106.085158\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_19\">\n",
       "     <g id=\"line2d_25\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"104.512055\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_20\">\n",
       "     <g id=\"line2d_26\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"103.149371\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_21\">\n",
       "     <g id=\"line2d_27\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"101.947398\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_22\">\n",
       "     <g id=\"line2d_28\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"93.798649\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_23\">\n",
       "     <g id=\"line2d_29\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"89.660889\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_24\">\n",
       "     <g id=\"line2d_30\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"86.725102\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_25\">\n",
       "     <g id=\"line2d_31\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"84.447928\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_26\">\n",
       "     <g id=\"line2d_32\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"82.587342\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_27\">\n",
       "     <g id=\"line2d_33\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"81.014238\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_28\">\n",
       "     <g id=\"line2d_34\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"79.651554\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_29\">\n",
       "     <g id=\"line2d_35\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"78.449582\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_30\">\n",
       "     <g id=\"line2d_36\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"70.300833\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_31\">\n",
       "     <g id=\"line2d_37\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"66.163073\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_32\">\n",
       "     <g id=\"line2d_38\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"63.227285\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_33\">\n",
       "     <g id=\"line2d_39\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"60.950111\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_34\">\n",
       "     <g id=\"line2d_40\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"59.089525\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_35\">\n",
       "     <g id=\"line2d_41\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"57.516422\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_36\">\n",
       "     <g id=\"line2d_42\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"56.153738\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_37\">\n",
       "     <g id=\"line2d_43\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"54.951765\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_38\">\n",
       "     <g id=\"line2d_44\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"46.803016\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_39\">\n",
       "     <g id=\"line2d_45\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"42.665256\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_40\">\n",
       "     <g id=\"line2d_46\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"39.729469\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_41\">\n",
       "     <g id=\"line2d_47\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"37.452295\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_42\">\n",
       "     <g id=\"line2d_48\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"35.591708\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_43\">\n",
       "     <g id=\"line2d_49\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"34.018605\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_44\">\n",
       "     <g id=\"line2d_50\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"32.655921\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_45\">\n",
       "     <g id=\"line2d_51\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"31.453948\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_46\">\n",
       "     <g id=\"line2d_52\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"23.3052\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_47\">\n",
       "     <g id=\"line2d_53\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"19.167439\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_48\">\n",
       "     <g id=\"line2d_54\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"16.231652\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_49\">\n",
       "     <g id=\"line2d_55\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"13.954478\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_50\">\n",
       "     <g id=\"line2d_56\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"12.093892\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_51\">\n",
       "     <g id=\"line2d_57\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"10.520788\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_52\">\n",
       "     <g id=\"line2d_58\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"9.158104\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_53\">\n",
       "     <g id=\"line2d_59\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"51.378125\" xlink:href=\"#m9ebc71b89e\" y=\"7.956132\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_13\">\n",
       "     <!-- loss -->\n",
       "     <g transform=\"translate(14.798437 84.807812)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"27.783203\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"88.964844\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"141.064453\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_60\">\n",
       "    <path clip-path=\"url(#pa39759743e)\" d=\"M 60.255398 31.035096 \n",
       "L 62.048786 52.820451 \n",
       "L 63.842175 71.241798 \n",
       "L 65.635563 88.228119 \n",
       "L 67.428951 103.714828 \n",
       "L 69.22234 116.818272 \n",
       "L 71.015728 126.43924 \n",
       "L 72.809117 129.028409 \n",
       "L 74.602505 129.427402 \n",
       "L 76.395894 128.75112 \n",
       "L 78.189282 131.543061 \n",
       "L 79.98267 130.235995 \n",
       "L 81.776059 129.801136 \n",
       "L 83.569447 129.735071 \n",
       "L 85.362836 130.387298 \n",
       "L 87.156224 129.194273 \n",
       "L 88.949613 129.590565 \n",
       "L 90.743001 130.329183 \n",
       "L 92.536389 131.613683 \n",
       "L 94.329778 131.549657 \n",
       "L 96.123166 130.968825 \n",
       "L 97.916555 130.701653 \n",
       "L 99.709943 130.706956 \n",
       "L 101.503332 130.094972 \n",
       "L 103.29672 130.197095 \n",
       "L 105.090108 130.274298 \n",
       "L 106.883497 130.989951 \n",
       "L 108.676885 131.617353 \n",
       "L 110.470274 131.144024 \n",
       "L 112.263662 131.615402 \n",
       "L 114.057051 131.941549 \n",
       "L 115.850439 132.274685 \n",
       "L 117.643827 132.426845 \n",
       "L 119.437216 130.908492 \n",
       "L 121.230604 131.491437 \n",
       "L 123.023993 131.249311 \n",
       "L 124.817381 131.697474 \n",
       "L 126.61077 132.127502 \n",
       "L 128.404158 132.570633 \n",
       "L 130.197546 133.20563 \n",
       "L 131.990935 131.916325 \n",
       "L 133.784323 133.408297 \n",
       "L 135.577712 132.190754 \n",
       "L 137.3711 132.978421 \n",
       "L 139.164489 132.894645 \n",
       "L 140.957877 132.539538 \n",
       "L 142.751265 132.75724 \n",
       "L 144.544654 133.094393 \n",
       "L 146.338042 133.954818 \n",
       "L 148.131431 133.77965 \n",
       "L 149.924819 133.917348 \n",
       "L 151.718208 132.645379 \n",
       "L 153.511596 132.82232 \n",
       "L 155.304985 133.48489 \n",
       "L 157.098373 132.350867 \n",
       "L 158.891761 132.708281 \n",
       "L 160.68515 133.876409 \n",
       "L 162.478538 133.908325 \n",
       "L 164.271927 133.424518 \n",
       "L 166.065315 134.720595 \n",
       "L 167.858704 133.742586 \n",
       "L 169.652092 132.710911 \n",
       "L 171.44548 133.815204 \n",
       "L 173.238869 134.935996 \n",
       "L 175.032257 135.037764 \n",
       "L 176.825646 133.375604 \n",
       "L 178.619034 133.596949 \n",
       "L 180.412423 134.490587 \n",
       "L 182.205811 135.001994 \n",
       "L 183.999199 133.258477 \n",
       "L 185.792588 133.06873 \n",
       "L 187.585976 134.236851 \n",
       "L 189.379365 135.130936 \n",
       "L 191.172753 134.93785 \n",
       "L 192.966142 135.599243 \n",
       "L 194.75953 135.035996 \n",
       "L 196.552918 134.745165 \n",
       "L 198.346307 134.246282 \n",
       "L 200.139695 134.763701 \n",
       "L 201.933084 133.682797 \n",
       "L 203.726472 134.54672 \n",
       "L 205.519861 134.364724 \n",
       "L 207.313249 132.600075 \n",
       "L 209.106637 134.015343 \n",
       "L 210.900026 133.908428 \n",
       "L 212.693414 132.827977 \n",
       "L 214.486803 133.156814 \n",
       "L 216.280191 132.809134 \n",
       "L 218.07358 133.065079 \n",
       "L 219.866968 134.660616 \n",
       "L 221.660356 133.448128 \n",
       "L 223.453745 134.299287 \n",
       "L 225.247133 134.333383 \n",
       "L 227.040522 135.099825 \n",
       "L 228.83391 133.464999 \n",
       "L 230.627299 135.624633 \n",
       "L 232.420687 136.11722 \n",
       "L 234.214075 136.922727 \n",
       "L 236.007464 135.319034 \n",
       "L 237.800852 134.255236 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"line2d_61\">\n",
       "    <path clip-path=\"url(#pa39759743e)\" d=\"M 60.255398 13.377273 \n",
       "L 62.048786 17.280758 \n",
       "L 63.842175 21.018701 \n",
       "L 65.635563 24.711679 \n",
       "L 67.428951 28.403489 \n",
       "L 69.22234 32.096354 \n",
       "L 71.015728 35.787499 \n",
       "L 72.809117 39.476503 \n",
       "L 74.602505 43.162519 \n",
       "L 76.395894 46.844578 \n",
       "L 78.189282 50.519356 \n",
       "L 79.98267 54.186042 \n",
       "L 81.776059 57.841267 \n",
       "L 83.569447 61.474628 \n",
       "L 85.362836 65.075177 \n",
       "L 87.156224 68.646996 \n",
       "L 88.949613 72.154623 \n",
       "L 90.743001 75.585187 \n",
       "L 92.536389 78.87736 \n",
       "L 94.329778 82.035013 \n",
       "L 96.123166 85.005088 \n",
       "L 97.916555 87.733036 \n",
       "L 99.709943 90.181 \n",
       "L 101.503332 92.270502 \n",
       "L 103.29672 94.099095 \n",
       "L 105.090108 95.571199 \n",
       "L 106.883497 96.699406 \n",
       "L 108.676885 97.581061 \n",
       "L 110.470274 98.235109 \n",
       "L 112.263662 98.749583 \n",
       "L 114.057051 99.114871 \n",
       "L 115.850439 99.396836 \n",
       "L 117.643827 99.571866 \n",
       "L 119.437216 99.773121 \n",
       "L 121.230604 99.890281 \n",
       "L 123.023993 99.991722 \n",
       "L 124.817381 100.068266 \n",
       "L 126.61077 100.130555 \n",
       "L 128.404158 100.212293 \n",
       "L 130.197546 100.198051 \n",
       "L 131.990935 100.30529 \n",
       "L 133.784323 100.356028 \n",
       "L 135.577712 100.365199 \n",
       "L 137.3711 100.391454 \n",
       "L 139.164489 100.432444 \n",
       "L 140.957877 100.496112 \n",
       "L 142.751265 100.483836 \n",
       "L 144.544654 100.499179 \n",
       "L 146.338042 100.530252 \n",
       "L 148.131431 100.588651 \n",
       "L 149.924819 100.634307 \n",
       "L 151.718208 100.679296 \n",
       "L 153.511596 100.699777 \n",
       "L 155.304985 100.735519 \n",
       "L 157.098373 100.772533 \n",
       "L 158.891761 100.79482 \n",
       "L 160.68515 100.807144 \n",
       "L 162.478538 100.833952 \n",
       "L 164.271927 100.86782 \n",
       "L 166.065315 100.891137 \n",
       "L 167.858704 100.891527 \n",
       "L 169.652092 100.934109 \n",
       "L 171.44548 100.955039 \n",
       "L 173.238869 100.942058 \n",
       "L 175.032257 100.935957 \n",
       "L 176.825646 100.981675 \n",
       "L 178.619034 101.032249 \n",
       "L 180.412423 100.986557 \n",
       "L 182.205811 100.980282 \n",
       "L 183.999199 101.049074 \n",
       "L 185.792588 101.040529 \n",
       "L 187.585976 101.049354 \n",
       "L 189.379365 101.025792 \n",
       "L 191.172753 101.083593 \n",
       "L 192.966142 101.060874 \n",
       "L 194.75953 101.055922 \n",
       "L 196.552918 101.029649 \n",
       "L 198.346307 101.092424 \n",
       "L 200.139695 101.121001 \n",
       "L 201.933084 101.13489 \n",
       "L 203.726472 101.14671 \n",
       "L 205.519861 101.140983 \n",
       "L 207.313249 101.155484 \n",
       "L 209.106637 101.121839 \n",
       "L 210.900026 101.141209 \n",
       "L 212.693414 101.158447 \n",
       "L 214.486803 101.186245 \n",
       "L 216.280191 101.170661 \n",
       "L 218.07358 101.172583 \n",
       "L 219.866968 101.160783 \n",
       "L 221.660356 101.193036 \n",
       "L 223.453745 101.112459 \n",
       "L 225.247133 101.142932 \n",
       "L 227.040522 101.153889 \n",
       "L 228.83391 101.168634 \n",
       "L 230.627299 101.132921 \n",
       "L 232.420687 101.152682 \n",
       "L 234.214075 101.121318 \n",
       "L 236.007464 101.176965 \n",
       "L 237.800852 101.183296 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 51.378125 143.1 \n",
       "L 51.378125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 246.678125 143.1 \n",
       "L 246.678125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 51.378125 143.1 \n",
       "L 246.678125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 51.378125 7.2 \n",
       "L 246.678125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"legend_1\">\n",
       "    <g id=\"patch_7\">\n",
       "     <path d=\"M 184.403125 44.55625 \n",
       "L 239.678125 44.55625 \n",
       "Q 241.678125 44.55625 241.678125 42.55625 \n",
       "L 241.678125 14.2 \n",
       "Q 241.678125 12.2 239.678125 12.2 \n",
       "L 184.403125 12.2 \n",
       "Q 182.403125 12.2 182.403125 14.2 \n",
       "L 182.403125 42.55625 \n",
       "Q 182.403125 44.55625 184.403125 44.55625 \n",
       "z\n",
       "\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_62\">\n",
       "     <path d=\"M 186.403125 20.298437 \n",
       "L 206.403125 20.298437 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_63\"/>\n",
       "    <g id=\"text_14\">\n",
       "     <!-- train -->\n",
       "     <g transform=\"translate(214.403125 23.798437)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"line2d_64\">\n",
       "     <path d=\"M 186.403125 34.976562 \n",
       "L 206.403125 34.976562 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_65\"/>\n",
       "    <g id=\"text_15\">\n",
       "     <!-- test -->\n",
       "     <g transform=\"translate(214.403125 38.476562)scale(0.1 -0.1)\">\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"100.732422\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"152.832031\" xlink:href=\"#DejaVuSans-116\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"pa39759743e\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"51.378125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fit_and_plot_pytorch(3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.13 丢弃法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "metadata": {},
   "outputs": [],
   "source": [
    "def dropout(X, drop_prob):\n",
    "    X = X.float()\n",
    "    assert 0 <= drop_prob <= 1\n",
    "    keep_prob = 1 - drop_prob\n",
    "    # 这种情况下把全部元素都丢弃\n",
    "    if keep_prob == 0:\n",
    "        return torch.zeros_like(X)\n",
    "    mask = (torch.rand(X.shape) < keep_prob).float()\n",
    "    return mask * X / keep_prob"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 99,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.],\n",
       "        [ 8.,  9., 10., 11., 12., 13., 14., 15.]])"
      ]
     },
     "execution_count": 99,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X = torch.arange(16).view(2, 8)\n",
    "dropout(X, 0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[ 0.,  2.,  4.,  0.,  8.,  0.,  0., 14.],\n",
       "        [16., 18.,  0.,  0.,  0., 26.,  0., 30.]])"
      ]
     },
     "execution_count": 100,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dropout(X, 0.5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[0., 0., 0., 0., 0., 0., 0., 0.],\n",
       "        [0., 0., 0., 0., 0., 0., 0., 0.]])"
      ]
     },
     "execution_count": 101,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dropout(X, 1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义模型参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 102,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_inputs, num_outputs, num_hiddens1, num_hiddens2 = 784, 10, 256, 256\n",
    "W1 = torch.tensor(np.random.normal(0, 0.01, size=(num_inputs, num_hiddens1)), dtype=torch.float, requires_grad=True)\n",
    "b1 = torch.zeros(num_hiddens1, requires_grad=True)\n",
    "W2 = torch.tensor(np.random.normal(0, 0.01, size=(num_hiddens1, num_hiddens2)), dtype=torch.float, requires_grad=True)\n",
    "b2 = torch.zeros(num_hiddens2, requires_grad=True)\n",
    "W3 = torch.tensor(np.random.normal(0, 0.01, size=(num_hiddens2, num_outputs)), dtype=torch.float, requires_grad=True)\n",
    "b3 = torch.zeros(num_outputs, requires_grad=True)\n",
    "params = [W1, b1, W2, b2, W3, b3]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "定义模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 103,
   "metadata": {},
   "outputs": [],
   "source": [
    "drop_prob1, drop_prob2 = 0.2, 0.5\n",
    "def net(X, is_training=True):\n",
    "    X = X.view(-1, num_inputs)\n",
    "    H1 = (torch.matmul(X, W1) + b1).relu()\n",
    "    # 只在模型训练时使用丢弃法\n",
    "    if is_training:\n",
    "        # 在第一层全连接后添加丢弃层\n",
    "        H1 = dropout(H1, drop_prob1)\n",
    "    H2 = (torch.matmul(H1, W2) + b2).relu()\n",
    "    if is_training:\n",
    "        # 在第二层全连接后添加丢弃层\n",
    "        H2 = dropout(H2, drop_prob2)\n",
    "    return torch.matmul(H2, W3) + b3"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "训练和测试模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 104,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss 0.0045, train acc 0.546, test acc 0.768\n",
      "epoch 2, loss 0.0023, train acc 0.786, test acc 0.813\n",
      "epoch 3, loss 0.0019, train acc 0.821, test acc 0.818\n",
      "epoch 4, loss 0.0017, train acc 0.839, test acc 0.824\n",
      "epoch 5, loss 0.0016, train acc 0.850, test acc 0.804\n"
     ]
    }
   ],
   "source": [
    "num_epochs, lr, batch_size = 5, 100.0, 256\n",
    "loss = torch.nn.CrossEntropyLoss()\n",
    "train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size)\n",
    "d2l.train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size, params, lr)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "简洁实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 105,
   "metadata": {},
   "outputs": [],
   "source": [
    "net = nn.Sequential(\n",
    "    d2l.FlattenLayer(), \n",
    "    nn.Linear(num_inputs, num_hiddens1), \n",
    "    nn.ReLU(), \n",
    "    nn.Dropout(drop_prob1), \n",
    "    nn.Linear(num_hiddens1, num_hiddens2), \n",
    "    nn.ReLU(), \n",
    "    nn.Dropout(drop_prob2), \n",
    "    nn.Linear(num_hiddens2, num_outputs)\n",
    ")\n",
    "for param in net.parameters():\n",
    "    nn.init.normal_(param, mean=0, std=0.01)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 106,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epoch 1, loss 0.0044, train acc 0.566, test acc 0.770\n",
      "epoch 2, loss 0.0022, train acc 0.789, test acc 0.727\n",
      "epoch 3, loss 0.0019, train acc 0.821, test acc 0.831\n",
      "epoch 4, loss 0.0017, train acc 0.838, test acc 0.841\n",
      "epoch 5, loss 0.0016, train acc 0.846, test acc 0.823\n"
     ]
    }
   ],
   "source": [
    "optimizer = torch.optim.SGD(net.parameters(), lr=0.5)\n",
    "d2l.train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size, None, None, optimizer)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.16 房价预测"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 107,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 如果没有安装pandas，则反注释下面一行\n",
    "# ! pip install pandas\n",
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "读取数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 108,
   "metadata": {},
   "outputs": [],
   "source": [
    "train_data = pd.read_csv('data/train.csv')\n",
    "test_data = pd.read_csv('data/test.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 109,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1460, 81)"
      ]
     },
     "execution_count": 109,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_data.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 110,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1459, 80)"
      ]
     },
     "execution_count": 110,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_data.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Id</th>\n",
       "      <th>MSSubClass</th>\n",
       "      <th>MSZoning</th>\n",
       "      <th>LotFrontage</th>\n",
       "      <th>SaleType</th>\n",
       "      <th>SaleCondition</th>\n",
       "      <th>SalePrice</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>60</td>\n",
       "      <td>RL</td>\n",
       "      <td>65.0</td>\n",
       "      <td>WD</td>\n",
       "      <td>Normal</td>\n",
       "      <td>208500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>20</td>\n",
       "      <td>RL</td>\n",
       "      <td>80.0</td>\n",
       "      <td>WD</td>\n",
       "      <td>Normal</td>\n",
       "      <td>181500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>60</td>\n",
       "      <td>RL</td>\n",
       "      <td>68.0</td>\n",
       "      <td>WD</td>\n",
       "      <td>Normal</td>\n",
       "      <td>223500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>70</td>\n",
       "      <td>RL</td>\n",
       "      <td>60.0</td>\n",
       "      <td>WD</td>\n",
       "      <td>Abnorml</td>\n",
       "      <td>140000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Id  MSSubClass MSZoning  LotFrontage SaleType SaleCondition  SalePrice\n",
       "0   1          60       RL         65.0       WD        Normal     208500\n",
       "1   2          20       RL         80.0       WD        Normal     181500\n",
       "2   3          60       RL         68.0       WD        Normal     223500\n",
       "3   4          70       RL         60.0       WD       Abnorml     140000"
      ]
     },
     "execution_count": 111,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_data.iloc[0:4, [0, 1, 2, 3, -3, -2, -1]]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 112,
   "metadata": {},
   "outputs": [],
   "source": [
    "all_features = pd.concat((train_data.iloc[:, 1:-1], test_data.iloc[:, 1:]))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "预处理"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 114,
   "metadata": {},
   "outputs": [],
   "source": [
    "numeric_features = all_features.dtypes[all_features.dtypes != 'object'].index\n",
    "all_features[numeric_features] = all_features[numeric_features].apply(\n",
    "    lambda x: (x - x.mean()) / (x.std())\n",
    ")\n",
    "# 标准化后，每个特征的均值变为0，所以可以直接用0来替换缺失值\n",
    "all_features[numeric_features] = all_features[numeric_features].fillna(0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 115,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2919, 331)"
      ]
     },
     "execution_count": 115,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# dummy_na=True将缺失值也当作合法的特征值并为其创建指示特征\n",
    "all_features = pd.get_dummies(all_features, dummy_na=True)\n",
    "all_features.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 116,
   "metadata": {},
   "outputs": [],
   "source": [
    "n_train = train_data.shape[0]\n",
    "train_features = torch.tensor(all_features[:n_train].values, dtype=torch.float)\n",
    "test_features = torch.tensor(all_features[n_train:].values, dtype=torch.float)\n",
    "train_labels = torch.tensor(train_data.SalePrice.values, dtype=torch.float).view(-1, 1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 117,
   "metadata": {},
   "outputs": [],
   "source": [
    "loss = torch.nn.MSELoss()\n",
    "def get_net(feature_num):\n",
    "    net = nn.Linear(feature_num, 1)\n",
    "    for param in net.parameters():\n",
    "        nn.init.normal_(param, mean=0, std=0.01)\n",
    "    return net"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 118,
   "metadata": {},
   "outputs": [],
   "source": [
    "def log_rmse(net, features, labels):\n",
    "    with torch.no_grad():\n",
    "        # 将小于1的值设成1，使得取对数时数值更稳定\n",
    "        clipped_preds = torch.max(net(features), torch.tensor(1.0))\n",
    "        rmse = torch.sqrt(loss(clipped_preds.log(), labels.log()))\n",
    "    return rmse.item()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 128,
   "metadata": {},
   "outputs": [],
   "source": [
    "def train(net, train_features, train_labels, test_features, test_labels, \n",
    "         num_epochs, learning_rate, weight_decay, batch_size):\n",
    "    train_ls, test_ls = [], []\n",
    "    dataset = torch.utils.data.TensorDataset(train_features, train_labels)\n",
    "    train_iter = torch.utils.data.DataLoader(dataset, batch_size, shuffle=True)\n",
    "    # 这里使用了Adam优化器\n",
    "    optimizer = torch.optim.Adam(params=net.parameters(), lr=learning_rate, weight_decay=weight_decay)\n",
    "    net = net.float()\n",
    "    for epoch in range(num_epochs):\n",
    "        for X, y in train_iter:\n",
    "            l = loss(net(X.float()), y.float())\n",
    "            optimizer.zero_grad()\n",
    "            l.backward()\n",
    "            optimizer.step()\n",
    "        train_ls.append(log_rmse(net, train_features, train_labels))\n",
    "        if test_labels is not None:\n",
    "            test_ls.append(log_rmse(net, test_features, test_labels))\n",
    "    return train_ls, test_ls"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "k折交叉验证"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 126,
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_k_fold_data(k, i, X, y):\n",
    "    assert k > 1\n",
    "    fold_size = X.shape[0] // k\n",
    "    X_train, y_train = None, None\n",
    "    for j in range(k):\n",
    "        idx = slice(j * fold_size, (j+1) * fold_size)\n",
    "        X_part, y_part = X[idx, :], y[idx]\n",
    "        if j==i:\n",
    "            X_valid, y_valid = X_part, y_part\n",
    "        elif X_train is None:\n",
    "            X_train, y_train = X_part, y_part\n",
    "        else:\n",
    "            X_train = torch.cat((X_train, X_part), dim=0)\n",
    "            y_train = torch.cat((y_train, y_part), dim=0)\n",
    "    return X_train, y_train, X_valid, y_valid"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 124,
   "metadata": {},
   "outputs": [],
   "source": [
    "def k_fold(k, X_train, y_train, num_epochs, \n",
    "          learning_rate, weight_decay, batch_size):\n",
    "    train_l_sum, valid_l_sum = 0, 0\n",
    "    for i in range(k):\n",
    "        data = get_k_fold_data(k, i, X_train, y_train)\n",
    "        net = get_net(X_train.shape[1])\n",
    "        train_ls, valid_ls = train(net, *data, num_epochs, learning_rate, \n",
    "                                  weight_decay, batch_size)\n",
    "        train_l_sum += train_ls[-1]\n",
    "        valid_l_sum += valid_ls[-1]\n",
    "        if i == 0:\n",
    "            d2l.semilogy(range(1, num_epochs+1), train_ls, 'epochs', 'rmse', \n",
    "                        range(1, num_epochs+1), valid_ls, ['train', 'valid'])\n",
    "        print('fold %d, train rmse %f, valid rmse %f' % (i, train_ls[-1], valid_ls[-1]))\n",
    "    return train_l_sum / k, valid_l_sum / k"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "模型选择"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 129,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "fold 0, train rmse 0.170489, valid rmse 0.157037\n",
      "fold 1, train rmse 0.162431, valid rmse 0.190838\n",
      "fold 2, train rmse 0.164008, valid rmse 0.168377\n",
      "fold 3, train rmse 0.168448, valid rmse 0.154738\n",
      "fold 4, train rmse 0.163813, valid rmse 0.183044\n",
      "5-fold validation: avg train rmse 0.165838, avg valid rmse 0.170807\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 248.644602 180.65625\" width=\"248.644602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T21:36:36.977403</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 248.644602 180.65625 \n",
       "L 248.644602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 240.778125 143.1 \n",
       "L 240.778125 7.2 \n",
       "L 45.478125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"m7dd37f7ec4\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"52.562009\" xlink:href=\"#m7dd37f7ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(49.380759 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"88.429778\" xlink:href=\"#m7dd37f7ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(82.067278 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"124.297546\" xlink:href=\"#m7dd37f7ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(117.935046 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"160.165315\" xlink:href=\"#m7dd37f7ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(153.802815 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"196.033084\" xlink:href=\"#m7dd37f7ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(189.670584 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"231.900852\" xlink:href=\"#m7dd37f7ec4\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(222.357102 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(125.295312 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m6daf588148\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"45.478125\" xlink:href=\"#m6daf588148\" y=\"64.840539\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{0}}$ -->\n",
       "      <g transform=\"translate(20.878125 68.639758)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -2 0 \n",
       "\" id=\"m9d69f09747\" style=\"stroke:#000000;stroke-width:0.6;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"127.497003\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"111.711983\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"100.512333\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"91.825209\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"84.727313\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_7\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"78.726127\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_8\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"73.527663\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_9\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"68.942292\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_10\">\n",
       "     <g id=\"line2d_16\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"37.855869\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_11\">\n",
       "     <g id=\"line2d_17\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"22.070848\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_12\">\n",
       "     <g id=\"line2d_18\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m9d69f09747\" y=\"10.871198\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_9\">\n",
       "     <!-- rmse -->\n",
       "     <g transform=\"translate(14.798437 87.669531)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 52 44.1875 \n",
       "Q 55.375 50.25 60.0625 53.125 \n",
       "Q 64.75 56 71.09375 56 \n",
       "Q 79.640625 56 84.28125 50.015625 \n",
       "Q 88.921875 44.046875 88.921875 33.015625 \n",
       "L 88.921875 0 \n",
       "L 79.890625 0 \n",
       "L 79.890625 32.71875 \n",
       "Q 79.890625 40.578125 77.09375 44.375 \n",
       "Q 74.3125 48.1875 68.609375 48.1875 \n",
       "Q 61.625 48.1875 57.5625 43.546875 \n",
       "Q 53.515625 38.921875 53.515625 30.90625 \n",
       "L 53.515625 0 \n",
       "L 44.484375 0 \n",
       "L 44.484375 32.71875 \n",
       "Q 44.484375 40.625 41.703125 44.40625 \n",
       "Q 38.921875 48.1875 33.109375 48.1875 \n",
       "Q 26.21875 48.1875 22.15625 43.53125 \n",
       "Q 18.109375 38.875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.1875 51.21875 25.484375 53.609375 \n",
       "Q 29.78125 56 35.6875 56 \n",
       "Q 41.65625 56 45.828125 52.96875 \n",
       "Q 50 49.953125 52 44.1875 \n",
       "z\n",
       "\" id=\"DejaVuSans-109\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"39.363281\" xlink:href=\"#DejaVuSans-109\"/>\n",
       "      <use x=\"136.775391\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"188.875\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_19\">\n",
       "    <path clip-path=\"url(#p7008a3fe60)\" d=\"M 54.355398 13.508906 \n",
       "L 56.148786 21.42298 \n",
       "L 57.942175 26.890551 \n",
       "L 59.735563 31.236851 \n",
       "L 61.528951 34.956982 \n",
       "L 63.32234 38.25634 \n",
       "L 65.115728 41.265355 \n",
       "L 66.909117 44.045135 \n",
       "L 68.702505 46.651353 \n",
       "L 70.495894 49.123137 \n",
       "L 72.289282 51.480665 \n",
       "L 74.08267 53.732066 \n",
       "L 75.876059 55.920716 \n",
       "L 77.669447 58.041179 \n",
       "L 79.462836 60.095923 \n",
       "L 81.256224 62.091146 \n",
       "L 83.049613 64.058979 \n",
       "L 84.843001 65.973527 \n",
       "L 86.636389 67.859653 \n",
       "L 88.429778 69.741044 \n",
       "L 90.223166 71.568156 \n",
       "L 92.016555 73.380011 \n",
       "L 93.809943 75.15868 \n",
       "L 95.603332 76.909094 \n",
       "L 97.39672 78.650071 \n",
       "L 99.190108 80.382356 \n",
       "L 100.983497 82.078659 \n",
       "L 102.776885 83.767001 \n",
       "L 104.570274 85.439425 \n",
       "L 106.363662 87.104519 \n",
       "L 108.157051 88.765952 \n",
       "L 109.950439 90.388657 \n",
       "L 111.743827 92.00267 \n",
       "L 113.537216 93.618212 \n",
       "L 115.330604 95.191912 \n",
       "L 117.123993 96.765622 \n",
       "L 118.917381 98.332666 \n",
       "L 120.71077 99.878769 \n",
       "L 122.504158 101.398108 \n",
       "L 124.297546 102.866581 \n",
       "L 126.090935 104.337144 \n",
       "L 127.884323 105.784425 \n",
       "L 129.677712 107.203665 \n",
       "L 131.4711 108.593632 \n",
       "L 133.264489 109.963547 \n",
       "L 135.057877 111.249891 \n",
       "L 136.851265 112.555234 \n",
       "L 138.644654 113.838676 \n",
       "L 140.438042 115.083591 \n",
       "L 142.231431 116.281309 \n",
       "L 144.024819 117.451837 \n",
       "L 145.818208 118.558461 \n",
       "L 147.611596 119.599093 \n",
       "L 149.404985 120.62427 \n",
       "L 151.198373 121.608809 \n",
       "L 152.991761 122.566995 \n",
       "L 154.78515 123.448611 \n",
       "L 156.578538 124.275273 \n",
       "L 158.371927 125.045552 \n",
       "L 160.165315 125.791927 \n",
       "L 161.958704 126.466006 \n",
       "L 163.752092 127.129125 \n",
       "L 165.54548 127.735006 \n",
       "L 167.338869 128.294012 \n",
       "L 169.132257 128.823752 \n",
       "L 170.925646 129.313161 \n",
       "L 172.719034 129.753595 \n",
       "L 174.512423 130.174964 \n",
       "L 176.305811 130.542684 \n",
       "L 178.099199 130.888276 \n",
       "L 179.892588 131.213839 \n",
       "L 181.685976 131.511556 \n",
       "L 183.479365 131.770893 \n",
       "L 185.272753 132.010236 \n",
       "L 187.066142 132.241884 \n",
       "L 188.85953 132.424151 \n",
       "L 190.652918 132.586166 \n",
       "L 192.446307 132.740089 \n",
       "L 194.239695 132.872363 \n",
       "L 196.033084 132.996868 \n",
       "L 197.826472 133.091752 \n",
       "L 199.619861 133.185861 \n",
       "L 201.413249 133.257406 \n",
       "L 203.206637 133.330431 \n",
       "L 205.000026 133.401223 \n",
       "L 206.793414 133.448459 \n",
       "L 208.586803 133.495911 \n",
       "L 210.380191 133.538926 \n",
       "L 212.17358 133.567907 \n",
       "L 213.966968 133.575037 \n",
       "L 215.760356 133.616897 \n",
       "L 217.553745 133.641996 \n",
       "L 219.347133 133.667845 \n",
       "L 221.140522 133.671523 \n",
       "L 222.93391 133.687549 \n",
       "L 224.727299 133.689076 \n",
       "L 226.520687 133.704256 \n",
       "L 228.314075 133.712469 \n",
       "L 230.107464 133.699585 \n",
       "L 231.900852 133.712153 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"line2d_20\">\n",
       "    <path clip-path=\"url(#p7008a3fe60)\" d=\"M 54.355398 13.377273 \n",
       "L 56.148786 21.247613 \n",
       "L 57.942175 26.686964 \n",
       "L 59.735563 31.005049 \n",
       "L 61.528951 34.706151 \n",
       "L 63.32234 37.988329 \n",
       "L 65.115728 40.972757 \n",
       "L 66.909117 43.735821 \n",
       "L 68.702505 46.326814 \n",
       "L 70.495894 48.78499 \n",
       "L 72.289282 51.126596 \n",
       "L 74.08267 53.363066 \n",
       "L 75.876059 55.536542 \n",
       "L 77.669447 57.645138 \n",
       "L 79.462836 59.686418 \n",
       "L 81.256224 61.666843 \n",
       "L 83.049613 63.620794 \n",
       "L 84.843001 65.527594 \n",
       "L 86.636389 67.407859 \n",
       "L 88.429778 69.279893 \n",
       "L 90.223166 71.09672 \n",
       "L 92.016555 72.897386 \n",
       "L 93.809943 74.665467 \n",
       "L 95.603332 76.406796 \n",
       "L 97.39672 78.143574 \n",
       "L 99.190108 79.868569 \n",
       "L 100.983497 81.560878 \n",
       "L 102.776885 83.244847 \n",
       "L 104.570274 84.916966 \n",
       "L 106.363662 86.580182 \n",
       "L 108.157051 88.244427 \n",
       "L 109.950439 89.872326 \n",
       "L 111.743827 91.492385 \n",
       "L 113.537216 93.118533 \n",
       "L 115.330604 94.7052 \n",
       "L 117.123993 96.297334 \n",
       "L 118.917381 97.883103 \n",
       "L 120.71077 99.456316 \n",
       "L 122.504158 101.002925 \n",
       "L 124.297546 102.502736 \n",
       "L 126.090935 104.014196 \n",
       "L 127.884323 105.505233 \n",
       "L 129.677712 106.971027 \n",
       "L 131.4711 108.41188 \n",
       "L 133.264489 109.84567 \n",
       "L 135.057877 111.193591 \n",
       "L 136.851265 112.565586 \n",
       "L 138.644654 113.924596 \n",
       "L 140.438042 115.249319 \n",
       "L 142.231431 116.534138 \n",
       "L 144.024819 117.800219 \n",
       "L 145.818208 119.005973 \n",
       "L 147.611596 120.14874 \n",
       "L 149.404985 121.279444 \n",
       "L 151.198373 122.375087 \n",
       "L 152.991761 123.465313 \n",
       "L 154.78515 124.466873 \n",
       "L 156.578538 125.4142 \n",
       "L 158.371927 126.307508 \n",
       "L 160.165315 127.170393 \n",
       "L 161.958704 127.958424 \n",
       "L 163.752092 128.743705 \n",
       "L 165.54548 129.470715 \n",
       "L 167.338869 130.143964 \n",
       "L 169.132257 130.786374 \n",
       "L 170.925646 131.386252 \n",
       "L 172.719034 131.930113 \n",
       "L 174.512423 132.455921 \n",
       "L 176.305811 132.910127 \n",
       "L 178.099199 133.338923 \n",
       "L 179.892588 133.750908 \n",
       "L 181.685976 134.129331 \n",
       "L 183.479365 134.456257 \n",
       "L 185.272753 134.769473 \n",
       "L 187.066142 135.076975 \n",
       "L 188.85953 135.311706 \n",
       "L 190.652918 135.523905 \n",
       "L 192.446307 135.729498 \n",
       "L 194.239695 135.902126 \n",
       "L 196.033084 136.065534 \n",
       "L 197.826472 136.183319 \n",
       "L 199.619861 136.306972 \n",
       "L 201.413249 136.398627 \n",
       "L 203.206637 136.474441 \n",
       "L 205.000026 136.564346 \n",
       "L 206.793414 136.619084 \n",
       "L 208.586803 136.695325 \n",
       "L 210.380191 136.749 \n",
       "L 212.17358 136.786747 \n",
       "L 213.966968 136.795037 \n",
       "L 215.760356 136.837725 \n",
       "L 217.553745 136.877551 \n",
       "L 219.347133 136.902084 \n",
       "L 221.140522 136.905305 \n",
       "L 222.93391 136.922291 \n",
       "L 224.727299 136.916465 \n",
       "L 226.520687 136.922727 \n",
       "L 228.314075 136.917329 \n",
       "L 230.107464 136.911027 \n",
       "L 231.900852 136.911843 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 45.478125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 240.778125 143.1 \n",
       "L 240.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 240.778125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 45.478125 7.2 \n",
       "L 240.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"legend_1\">\n",
       "    <g id=\"patch_7\">\n",
       "     <path d=\"M 177.826562 44.55625 \n",
       "L 233.778125 44.55625 \n",
       "Q 235.778125 44.55625 235.778125 42.55625 \n",
       "L 235.778125 14.2 \n",
       "Q 235.778125 12.2 233.778125 12.2 \n",
       "L 177.826562 12.2 \n",
       "Q 175.826562 12.2 175.826562 14.2 \n",
       "L 175.826562 42.55625 \n",
       "Q 175.826562 44.55625 177.826562 44.55625 \n",
       "z\n",
       "\" style=\"fill:#ffffff;opacity:0.8;stroke:#cccccc;stroke-linejoin:miter;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_21\">\n",
       "     <path d=\"M 179.826562 20.298437 \n",
       "L 199.826562 20.298437 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_22\"/>\n",
       "    <g id=\"text_10\">\n",
       "     <!-- train -->\n",
       "     <g transform=\"translate(207.826562 23.798437)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 18.3125 70.21875 \n",
       "L 18.3125 54.6875 \n",
       "L 36.8125 54.6875 \n",
       "L 36.8125 47.703125 \n",
       "L 18.3125 47.703125 \n",
       "L 18.3125 18.015625 \n",
       "Q 18.3125 11.328125 20.140625 9.421875 \n",
       "Q 21.96875 7.515625 27.59375 7.515625 \n",
       "L 36.8125 7.515625 \n",
       "L 36.8125 0 \n",
       "L 27.59375 0 \n",
       "Q 17.1875 0 13.234375 3.875 \n",
       "Q 9.28125 7.765625 9.28125 18.015625 \n",
       "L 9.28125 47.703125 \n",
       "L 2.6875 47.703125 \n",
       "L 2.6875 54.6875 \n",
       "L 9.28125 54.6875 \n",
       "L 9.28125 70.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-116\"/>\n",
       "       <path d=\"M 34.28125 27.484375 \n",
       "Q 23.390625 27.484375 19.1875 25 \n",
       "Q 14.984375 22.515625 14.984375 16.5 \n",
       "Q 14.984375 11.71875 18.140625 8.90625 \n",
       "Q 21.296875 6.109375 26.703125 6.109375 \n",
       "Q 34.1875 6.109375 38.703125 11.40625 \n",
       "Q 43.21875 16.703125 43.21875 25.484375 \n",
       "L 43.21875 27.484375 \n",
       "z\n",
       "M 52.203125 31.203125 \n",
       "L 52.203125 0 \n",
       "L 43.21875 0 \n",
       "L 43.21875 8.296875 \n",
       "Q 40.140625 3.328125 35.546875 0.953125 \n",
       "Q 30.953125 -1.421875 24.3125 -1.421875 \n",
       "Q 15.921875 -1.421875 10.953125 3.296875 \n",
       "Q 6 8.015625 6 15.921875 \n",
       "Q 6 25.140625 12.171875 29.828125 \n",
       "Q 18.359375 34.515625 30.609375 34.515625 \n",
       "L 43.21875 34.515625 \n",
       "L 43.21875 35.40625 \n",
       "Q 43.21875 41.609375 39.140625 45 \n",
       "Q 35.0625 48.390625 27.6875 48.390625 \n",
       "Q 23 48.390625 18.546875 47.265625 \n",
       "Q 14.109375 46.140625 10.015625 43.890625 \n",
       "L 10.015625 52.203125 \n",
       "Q 14.9375 54.109375 19.578125 55.046875 \n",
       "Q 24.21875 56 28.609375 56 \n",
       "Q 40.484375 56 46.34375 49.84375 \n",
       "Q 52.203125 43.703125 52.203125 31.203125 \n",
       "z\n",
       "\" id=\"DejaVuSans-97\"/>\n",
       "       <path d=\"M 9.421875 54.6875 \n",
       "L 18.40625 54.6875 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 64.59375 \n",
       "L 9.421875 64.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-105\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-110\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-116\"/>\n",
       "      <use x=\"39.208984\" xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"80.322266\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"141.601562\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"169.384766\" xlink:href=\"#DejaVuSans-110\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"line2d_23\">\n",
       "     <path d=\"M 179.826562 34.976562 \n",
       "L 199.826562 34.976562 \n",
       "\" style=\"fill:none;stroke:#ff7f0e;stroke-dasharray:1.5,2.475;stroke-dashoffset:0;stroke-width:1.5;\"/>\n",
       "    </g>\n",
       "    <g id=\"line2d_24\"/>\n",
       "    <g id=\"text_11\">\n",
       "     <!-- valid -->\n",
       "     <g transform=\"translate(207.826562 38.476562)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 2.984375 54.6875 \n",
       "L 12.5 54.6875 \n",
       "L 29.59375 8.796875 \n",
       "L 46.6875 54.6875 \n",
       "L 56.203125 54.6875 \n",
       "L 35.6875 0 \n",
       "L 23.484375 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-118\"/>\n",
       "       <path d=\"M 9.421875 75.984375 \n",
       "L 18.40625 75.984375 \n",
       "L 18.40625 0 \n",
       "L 9.421875 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-108\"/>\n",
       "       <path d=\"M 45.40625 46.390625 \n",
       "L 45.40625 75.984375 \n",
       "L 54.390625 75.984375 \n",
       "L 54.390625 0 \n",
       "L 45.40625 0 \n",
       "L 45.40625 8.203125 \n",
       "Q 42.578125 3.328125 38.25 0.953125 \n",
       "Q 33.9375 -1.421875 27.875 -1.421875 \n",
       "Q 17.96875 -1.421875 11.734375 6.484375 \n",
       "Q 5.515625 14.40625 5.515625 27.296875 \n",
       "Q 5.515625 40.1875 11.734375 48.09375 \n",
       "Q 17.96875 56 27.875 56 \n",
       "Q 33.9375 56 38.25 53.625 \n",
       "Q 42.578125 51.265625 45.40625 46.390625 \n",
       "z\n",
       "M 14.796875 27.296875 \n",
       "Q 14.796875 17.390625 18.875 11.75 \n",
       "Q 22.953125 6.109375 30.078125 6.109375 \n",
       "Q 37.203125 6.109375 41.296875 11.75 \n",
       "Q 45.40625 17.390625 45.40625 27.296875 \n",
       "Q 45.40625 37.203125 41.296875 42.84375 \n",
       "Q 37.203125 48.484375 30.078125 48.484375 \n",
       "Q 22.953125 48.484375 18.875 42.84375 \n",
       "Q 14.796875 37.203125 14.796875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-100\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-118\"/>\n",
       "      <use x=\"59.179688\" xlink:href=\"#DejaVuSans-97\"/>\n",
       "      <use x=\"120.458984\" xlink:href=\"#DejaVuSans-108\"/>\n",
       "      <use x=\"148.242188\" xlink:href=\"#DejaVuSans-105\"/>\n",
       "      <use x=\"176.025391\" xlink:href=\"#DejaVuSans-100\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p7008a3fe60\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"45.478125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "k, num_epochs, lr, weight_decay, batch_size = 5, 100, 5, 0, 64\n",
    "train_l, valid_l = k_fold(k, train_features, train_labels, num_epochs, lr, weight_decay, batch_size)\n",
    "print('%d-fold validation: avg train rmse %f, avg valid rmse %f' % (k, train_l, valid_l))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "预测"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 130,
   "metadata": {},
   "outputs": [],
   "source": [
    "def train_and_pred(train_features, test_features, train_labels, test_data, \n",
    "                  num_epochs, lr, weight_decay, batch_size):\n",
    "    net = get_net(train_features.shape[1])\n",
    "    train_ls, _ = train(net, train_features, train_labels, None, None, \n",
    "                       num_epochs, lr, weight_decay, batch_size)\n",
    "    d2l.semilogy(range(1, num_epochs+1), train_ls, 'epochs', 'rmse')\n",
    "    print('train rmse %f' % train_ls[-1])\n",
    "    preds = net(test_features).detach().numpy()\n",
    "    test_data['SalePrice'] = pd.Series(preds.reshape(1, -1)[0])\n",
    "    submission = pd.concat([test_data['Id'], test_data['SalePrice']], axis=1)\n",
    "    submission.to_csv('submission.csv', index=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 131,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "train rmse 0.162403\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (https://matplotlib.org/) -->\n",
       "<svg height=\"180.65625pt\" version=\"1.1\" viewBox=\"0 0 248.644602 180.65625\" width=\"248.644602pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <metadata>\n",
       "  <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n",
       "   <cc:Work>\n",
       "    <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n",
       "    <dc:date>2020-12-03T21:49:11.474175</dc:date>\n",
       "    <dc:format>image/svg+xml</dc:format>\n",
       "    <dc:creator>\n",
       "     <cc:Agent>\n",
       "      <dc:title>Matplotlib v3.3.2, https://matplotlib.org/</dc:title>\n",
       "     </cc:Agent>\n",
       "    </dc:creator>\n",
       "   </cc:Work>\n",
       "  </rdf:RDF>\n",
       " </metadata>\n",
       " <defs>\n",
       "  <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 180.65625 \n",
       "L 248.644602 180.65625 \n",
       "L 248.644602 0 \n",
       "L 0 0 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 240.778125 143.1 \n",
       "L 240.778125 7.2 \n",
       "L 45.478125 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 3.5 \n",
       "\" id=\"me3f973d5bb\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"52.562009\" xlink:href=\"#me3f973d5bb\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(49.380759 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "z\n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "z\n",
       "\" id=\"DejaVuSans-48\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_2\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"88.429778\" xlink:href=\"#me3f973d5bb\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(82.067278 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-50\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-50\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"124.297546\" xlink:href=\"#me3f973d5bb\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 40 -->\n",
       "      <g transform=\"translate(117.935046 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"DejaVuSans-52\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-52\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"160.165315\" xlink:href=\"#me3f973d5bb\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 60 -->\n",
       "      <g transform=\"translate(153.802815 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "z\n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-54\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-54\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"196.033084\" xlink:href=\"#me3f973d5bb\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 80 -->\n",
       "      <g transform=\"translate(189.670584 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "z\n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "z\n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "z\n",
       "\" id=\"DejaVuSans-56\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-56\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"231.900852\" xlink:href=\"#me3f973d5bb\" y=\"143.1\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 100 -->\n",
       "      <g transform=\"translate(222.357102 157.698438)scale(0.1 -0.1)\">\n",
       "       <defs>\n",
       "        <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"DejaVuSans-49\"/>\n",
       "       </defs>\n",
       "       <use xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use x=\"63.623047\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use x=\"127.246094\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_7\">\n",
       "     <!-- epochs -->\n",
       "     <g transform=\"translate(125.295312 171.376563)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 56.203125 29.59375 \n",
       "L 56.203125 25.203125 \n",
       "L 14.890625 25.203125 \n",
       "Q 15.484375 15.921875 20.484375 11.0625 \n",
       "Q 25.484375 6.203125 34.421875 6.203125 \n",
       "Q 39.59375 6.203125 44.453125 7.46875 \n",
       "Q 49.3125 8.734375 54.109375 11.28125 \n",
       "L 54.109375 2.78125 \n",
       "Q 49.265625 0.734375 44.1875 -0.34375 \n",
       "Q 39.109375 -1.421875 33.890625 -1.421875 \n",
       "Q 20.796875 -1.421875 13.15625 6.1875 \n",
       "Q 5.515625 13.8125 5.515625 26.8125 \n",
       "Q 5.515625 40.234375 12.765625 48.109375 \n",
       "Q 20.015625 56 32.328125 56 \n",
       "Q 43.359375 56 49.78125 48.890625 \n",
       "Q 56.203125 41.796875 56.203125 29.59375 \n",
       "z\n",
       "M 47.21875 32.234375 \n",
       "Q 47.125 39.59375 43.09375 43.984375 \n",
       "Q 39.0625 48.390625 32.421875 48.390625 \n",
       "Q 24.90625 48.390625 20.390625 44.140625 \n",
       "Q 15.875 39.890625 15.1875 32.171875 \n",
       "z\n",
       "\" id=\"DejaVuSans-101\"/>\n",
       "       <path d=\"M 18.109375 8.203125 \n",
       "L 18.109375 -20.796875 \n",
       "L 9.078125 -20.796875 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.390625 \n",
       "Q 20.953125 51.265625 25.265625 53.625 \n",
       "Q 29.59375 56 35.59375 56 \n",
       "Q 45.5625 56 51.78125 48.09375 \n",
       "Q 58.015625 40.1875 58.015625 27.296875 \n",
       "Q 58.015625 14.40625 51.78125 6.484375 \n",
       "Q 45.5625 -1.421875 35.59375 -1.421875 \n",
       "Q 29.59375 -1.421875 25.265625 0.953125 \n",
       "Q 20.953125 3.328125 18.109375 8.203125 \n",
       "z\n",
       "M 48.6875 27.296875 \n",
       "Q 48.6875 37.203125 44.609375 42.84375 \n",
       "Q 40.53125 48.484375 33.40625 48.484375 \n",
       "Q 26.265625 48.484375 22.1875 42.84375 \n",
       "Q 18.109375 37.203125 18.109375 27.296875 \n",
       "Q 18.109375 17.390625 22.1875 11.75 \n",
       "Q 26.265625 6.109375 33.40625 6.109375 \n",
       "Q 40.53125 6.109375 44.609375 11.75 \n",
       "Q 48.6875 17.390625 48.6875 27.296875 \n",
       "z\n",
       "\" id=\"DejaVuSans-112\"/>\n",
       "       <path d=\"M 30.609375 48.390625 \n",
       "Q 23.390625 48.390625 19.1875 42.75 \n",
       "Q 14.984375 37.109375 14.984375 27.296875 \n",
       "Q 14.984375 17.484375 19.15625 11.84375 \n",
       "Q 23.34375 6.203125 30.609375 6.203125 \n",
       "Q 37.796875 6.203125 41.984375 11.859375 \n",
       "Q 46.1875 17.53125 46.1875 27.296875 \n",
       "Q 46.1875 37.015625 41.984375 42.703125 \n",
       "Q 37.796875 48.390625 30.609375 48.390625 \n",
       "z\n",
       "M 30.609375 56 \n",
       "Q 42.328125 56 49.015625 48.375 \n",
       "Q 55.71875 40.765625 55.71875 27.296875 \n",
       "Q 55.71875 13.875 49.015625 6.21875 \n",
       "Q 42.328125 -1.421875 30.609375 -1.421875 \n",
       "Q 18.84375 -1.421875 12.171875 6.21875 \n",
       "Q 5.515625 13.875 5.515625 27.296875 \n",
       "Q 5.515625 40.765625 12.171875 48.375 \n",
       "Q 18.84375 56 30.609375 56 \n",
       "z\n",
       "\" id=\"DejaVuSans-111\"/>\n",
       "       <path d=\"M 48.78125 52.59375 \n",
       "L 48.78125 44.1875 \n",
       "Q 44.96875 46.296875 41.140625 47.34375 \n",
       "Q 37.3125 48.390625 33.40625 48.390625 \n",
       "Q 24.65625 48.390625 19.8125 42.84375 \n",
       "Q 14.984375 37.3125 14.984375 27.296875 \n",
       "Q 14.984375 17.28125 19.8125 11.734375 \n",
       "Q 24.65625 6.203125 33.40625 6.203125 \n",
       "Q 37.3125 6.203125 41.140625 7.25 \n",
       "Q 44.96875 8.296875 48.78125 10.40625 \n",
       "L 48.78125 2.09375 \n",
       "Q 45.015625 0.34375 40.984375 -0.53125 \n",
       "Q 36.96875 -1.421875 32.421875 -1.421875 \n",
       "Q 20.0625 -1.421875 12.78125 6.34375 \n",
       "Q 5.515625 14.109375 5.515625 27.296875 \n",
       "Q 5.515625 40.671875 12.859375 48.328125 \n",
       "Q 20.21875 56 33.015625 56 \n",
       "Q 37.15625 56 41.109375 55.140625 \n",
       "Q 45.0625 54.296875 48.78125 52.59375 \n",
       "z\n",
       "\" id=\"DejaVuSans-99\"/>\n",
       "       <path d=\"M 54.890625 33.015625 \n",
       "L 54.890625 0 \n",
       "L 45.90625 0 \n",
       "L 45.90625 32.71875 \n",
       "Q 45.90625 40.484375 42.875 44.328125 \n",
       "Q 39.84375 48.1875 33.796875 48.1875 \n",
       "Q 26.515625 48.1875 22.3125 43.546875 \n",
       "Q 18.109375 38.921875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 75.984375 \n",
       "L 18.109375 75.984375 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.34375 51.125 25.703125 53.5625 \n",
       "Q 30.078125 56 35.796875 56 \n",
       "Q 45.21875 56 50.046875 50.171875 \n",
       "Q 54.890625 44.34375 54.890625 33.015625 \n",
       "z\n",
       "\" id=\"DejaVuSans-104\"/>\n",
       "       <path d=\"M 44.28125 53.078125 \n",
       "L 44.28125 44.578125 \n",
       "Q 40.484375 46.53125 36.375 47.5 \n",
       "Q 32.28125 48.484375 27.875 48.484375 \n",
       "Q 21.1875 48.484375 17.84375 46.4375 \n",
       "Q 14.5 44.390625 14.5 40.28125 \n",
       "Q 14.5 37.15625 16.890625 35.375 \n",
       "Q 19.28125 33.59375 26.515625 31.984375 \n",
       "L 29.59375 31.296875 \n",
       "Q 39.15625 29.25 43.1875 25.515625 \n",
       "Q 47.21875 21.78125 47.21875 15.09375 \n",
       "Q 47.21875 7.46875 41.1875 3.015625 \n",
       "Q 35.15625 -1.421875 24.609375 -1.421875 \n",
       "Q 20.21875 -1.421875 15.453125 -0.5625 \n",
       "Q 10.6875 0.296875 5.421875 2 \n",
       "L 5.421875 11.28125 \n",
       "Q 10.40625 8.6875 15.234375 7.390625 \n",
       "Q 20.0625 6.109375 24.8125 6.109375 \n",
       "Q 31.15625 6.109375 34.5625 8.28125 \n",
       "Q 37.984375 10.453125 37.984375 14.40625 \n",
       "Q 37.984375 18.0625 35.515625 20.015625 \n",
       "Q 33.0625 21.96875 24.703125 23.78125 \n",
       "L 21.578125 24.515625 \n",
       "Q 13.234375 26.265625 9.515625 29.90625 \n",
       "Q 5.8125 33.546875 5.8125 39.890625 \n",
       "Q 5.8125 47.609375 11.28125 51.796875 \n",
       "Q 16.75 56 26.8125 56 \n",
       "Q 31.78125 56 36.171875 55.265625 \n",
       "Q 40.578125 54.546875 44.28125 53.078125 \n",
       "z\n",
       "\" id=\"DejaVuSans-115\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-101\"/>\n",
       "      <use x=\"61.523438\" xlink:href=\"#DejaVuSans-112\"/>\n",
       "      <use x=\"125\" xlink:href=\"#DejaVuSans-111\"/>\n",
       "      <use x=\"186.181641\" xlink:href=\"#DejaVuSans-99\"/>\n",
       "      <use x=\"241.162109\" xlink:href=\"#DejaVuSans-104\"/>\n",
       "      <use x=\"304.541016\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -3.5 0 \n",
       "\" id=\"m010684c180\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"45.478125\" xlink:href=\"#m010684c180\" y=\"64.099398\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- $\\mathdefault{10^{0}}$ -->\n",
       "      <g transform=\"translate(20.878125 67.898617)scale(0.1 -0.1)\">\n",
       "       <use transform=\"translate(0 0.765625)\" xlink:href=\"#DejaVuSans-49\"/>\n",
       "       <use transform=\"translate(63.623047 0.765625)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "       <use transform=\"translate(128.203125 39.046875)scale(0.7)\" xlink:href=\"#DejaVuSans-48\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_8\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -2 0 \n",
       "\" id=\"m2b6e776613\" style=\"stroke:#000000;stroke-width:0.6;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"128.579982\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"112.335412\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"100.809706\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"91.869674\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"84.565136\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_7\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"78.389237\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_8\">\n",
       "     <g id=\"line2d_14\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"73.03943\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_9\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"68.320566\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_10\">\n",
       "     <g id=\"line2d_16\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"36.329123\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_11\">\n",
       "     <g id=\"line2d_17\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"20.084553\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_12\">\n",
       "     <g id=\"line2d_18\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.6;\" x=\"45.478125\" xlink:href=\"#m2b6e776613\" y=\"8.558847\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"text_9\">\n",
       "     <!-- rmse -->\n",
       "     <g transform=\"translate(14.798437 87.669531)rotate(-90)scale(0.1 -0.1)\">\n",
       "      <defs>\n",
       "       <path d=\"M 41.109375 46.296875 \n",
       "Q 39.59375 47.171875 37.8125 47.578125 \n",
       "Q 36.03125 48 33.890625 48 \n",
       "Q 26.265625 48 22.1875 43.046875 \n",
       "Q 18.109375 38.09375 18.109375 28.8125 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 20.953125 51.171875 25.484375 53.578125 \n",
       "Q 30.03125 56 36.53125 56 \n",
       "Q 37.453125 56 38.578125 55.875 \n",
       "Q 39.703125 55.765625 41.0625 55.515625 \n",
       "z\n",
       "\" id=\"DejaVuSans-114\"/>\n",
       "       <path d=\"M 52 44.1875 \n",
       "Q 55.375 50.25 60.0625 53.125 \n",
       "Q 64.75 56 71.09375 56 \n",
       "Q 79.640625 56 84.28125 50.015625 \n",
       "Q 88.921875 44.046875 88.921875 33.015625 \n",
       "L 88.921875 0 \n",
       "L 79.890625 0 \n",
       "L 79.890625 32.71875 \n",
       "Q 79.890625 40.578125 77.09375 44.375 \n",
       "Q 74.3125 48.1875 68.609375 48.1875 \n",
       "Q 61.625 48.1875 57.5625 43.546875 \n",
       "Q 53.515625 38.921875 53.515625 30.90625 \n",
       "L 53.515625 0 \n",
       "L 44.484375 0 \n",
       "L 44.484375 32.71875 \n",
       "Q 44.484375 40.625 41.703125 44.40625 \n",
       "Q 38.921875 48.1875 33.109375 48.1875 \n",
       "Q 26.21875 48.1875 22.15625 43.53125 \n",
       "Q 18.109375 38.875 18.109375 30.90625 \n",
       "L 18.109375 0 \n",
       "L 9.078125 0 \n",
       "L 9.078125 54.6875 \n",
       "L 18.109375 54.6875 \n",
       "L 18.109375 46.1875 \n",
       "Q 21.1875 51.21875 25.484375 53.609375 \n",
       "Q 29.78125 56 35.6875 56 \n",
       "Q 41.65625 56 45.828125 52.96875 \n",
       "Q 50 49.953125 52 44.1875 \n",
       "z\n",
       "\" id=\"DejaVuSans-109\"/>\n",
       "      </defs>\n",
       "      <use xlink:href=\"#DejaVuSans-114\"/>\n",
       "      <use x=\"39.363281\" xlink:href=\"#DejaVuSans-109\"/>\n",
       "      <use x=\"136.775391\" xlink:href=\"#DejaVuSans-115\"/>\n",
       "      <use x=\"188.875\" xlink:href=\"#DejaVuSans-101\"/>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"line2d_19\">\n",
       "    <path clip-path=\"url(#pabbc089e8c)\" d=\"M 54.355398 13.377273 \n",
       "L 56.148786 21.979127 \n",
       "L 57.942175 27.977686 \n",
       "L 59.735563 32.799264 \n",
       "L 61.528951 36.94737 \n",
       "L 63.32234 40.638908 \n",
       "L 65.115728 44.023816 \n",
       "L 66.909117 47.169483 \n",
       "L 68.702505 50.119014 \n",
       "L 70.495894 52.956641 \n",
       "L 72.289282 55.656944 \n",
       "L 74.08267 58.257653 \n",
       "L 75.876059 60.767905 \n",
       "L 77.669447 63.25121 \n",
       "L 79.462836 65.642857 \n",
       "L 81.256224 67.980338 \n",
       "L 83.049613 70.295506 \n",
       "L 84.843001 72.543641 \n",
       "L 86.636389 74.773127 \n",
       "L 88.429778 76.975837 \n",
       "L 90.223166 79.144675 \n",
       "L 92.016555 81.309416 \n",
       "L 93.809943 83.396967 \n",
       "L 95.603332 85.513413 \n",
       "L 97.39672 87.587904 \n",
       "L 99.190108 89.627652 \n",
       "L 100.983497 91.649239 \n",
       "L 102.776885 93.683234 \n",
       "L 104.570274 95.670772 \n",
       "L 106.363662 97.610447 \n",
       "L 108.157051 99.55026 \n",
       "L 109.950439 101.479772 \n",
       "L 111.743827 103.346284 \n",
       "L 113.537216 105.184606 \n",
       "L 115.330604 107.001048 \n",
       "L 117.123993 108.770692 \n",
       "L 118.917381 110.505605 \n",
       "L 120.71077 112.176514 \n",
       "L 122.504158 113.823942 \n",
       "L 124.297546 115.40908 \n",
       "L 126.090935 116.942457 \n",
       "L 127.884323 118.405302 \n",
       "L 129.677712 119.846564 \n",
       "L 131.4711 121.173666 \n",
       "L 133.264489 122.445074 \n",
       "L 135.057877 123.654369 \n",
       "L 136.851265 124.790135 \n",
       "L 138.644654 125.872751 \n",
       "L 140.438042 126.864964 \n",
       "L 142.231431 127.813325 \n",
       "L 144.024819 128.675941 \n",
       "L 145.818208 129.47054 \n",
       "L 147.611596 130.192059 \n",
       "L 149.404985 130.872744 \n",
       "L 151.198373 131.466804 \n",
       "L 152.991761 132.015283 \n",
       "L 154.78515 132.508528 \n",
       "L 156.578538 132.952451 \n",
       "L 158.371927 133.360575 \n",
       "L 160.165315 133.719821 \n",
       "L 161.958704 134.046278 \n",
       "L 163.752092 134.321857 \n",
       "L 165.54548 134.571273 \n",
       "L 167.338869 134.792783 \n",
       "L 169.132257 134.987886 \n",
       "L 170.925646 135.151161 \n",
       "L 172.719034 135.302765 \n",
       "L 174.512423 135.433258 \n",
       "L 176.305811 135.534968 \n",
       "L 178.099199 135.643663 \n",
       "L 179.892588 135.729574 \n",
       "L 181.685976 135.785427 \n",
       "L 183.479365 135.853303 \n",
       "L 185.272753 135.911013 \n",
       "L 187.066142 135.954558 \n",
       "L 188.85953 135.997816 \n",
       "L 190.652918 136.026405 \n",
       "L 192.446307 136.051609 \n",
       "L 194.239695 136.079999 \n",
       "L 196.033084 136.10954 \n",
       "L 197.826472 136.111115 \n",
       "L 199.619861 136.160645 \n",
       "L 201.413249 136.17392 \n",
       "L 203.206637 136.174205 \n",
       "L 205.000026 136.231187 \n",
       "L 206.793414 136.233944 \n",
       "L 208.586803 136.268936 \n",
       "L 210.380191 136.316703 \n",
       "L 212.17358 136.346612 \n",
       "L 213.966968 136.383371 \n",
       "L 215.760356 136.404104 \n",
       "L 217.553745 136.476575 \n",
       "L 219.347133 136.493835 \n",
       "L 221.140522 136.556963 \n",
       "L 222.93391 136.583972 \n",
       "L 224.727299 136.659916 \n",
       "L 226.520687 136.711911 \n",
       "L 228.314075 136.754809 \n",
       "L 230.107464 136.879594 \n",
       "L 231.900852 136.922727 \n",
       "\" style=\"fill:none;stroke:#1f77b4;stroke-linecap:square;stroke-width:1.5;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 45.478125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 240.778125 143.1 \n",
       "L 240.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 45.478125 143.1 \n",
       "L 240.778125 143.1 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 45.478125 7.2 \n",
       "L 240.778125 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;\"/>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"pabbc089e8c\">\n",
       "   <rect height=\"135.9\" width=\"195.3\" x=\"45.478125\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<Figure size 252x180 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "train_and_pred(train_features, test_features, train_labels, test_data, num_epochs, lr, weight_decay, batch_size)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
